# include/xapian/dbfactory.h File Reference

Factory functions for constructing Database and WritableDatabase objects. More...

`#include <string>`
`#include <xapian/types.h>`
`#include <xapian/database.h>`
`#include <xapian/version.h>`

Include dependency graph for dbfactory.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Namespaces

namespace | Xapian
namespace | Xapian::Auto
namespace | Xapian::InMemory
namespace | Xapian::Quartz
namespace | Xapian::Flint
namespace | Xapian::Remote

## Functions

Database | Xapian::Auto::open_stub (const std::string &file)
| Construct a Database object for a stub database file.
| Xapian::Auto::XAPIAN_DEPRECATED (Database open(const std::string &path))
| Construct a Database object for read-only access to a database.
Database | Xapian::Auto::open (const std::string &path)
| Construct a Database object for read-only access to a Flint database.
| Xapian::Auto::XAPIAN_DEPRECATED (WritableDatabase open(const std::string &path, int action))
| Construct a WritableDatabase object for update access to a database.
WritableDatabase | Xapian::Auto::open (const std::string &path, int action)
WritableDatabase | Xapian::InMemory::open ()
| Construct a Database object for update access to an InMemory database.
Database | Xapian::Quartz::open (const std::string &dir)
| Construct a Database object for read-only access to a Quartz database.
WritableDatabase | Xapian::Quartz::open (const std::string &dir, int action, int block_size=8192)
| Construct a Database object for update access to a Quartz database.
Database | Xapian::Flint::open (const std::string &dir)
| Construct a Database object for read-only access to a Flint database.
WritableDatabase | Xapian::Flint::open (const std::string &dir, int action, int block_size=8192)
| Construct a Database object for update access to a Flint database.
Database | Xapian::Remote::open (const std::string &host, unsigned int port, Xapian::timeout timeout=10000, Xapian::timeout connect_timeout=0)
| Construct a Database object for read-only access to a remote database accessed via a TCP connection.
Database | Xapian::Remote::open (const std::string &program, const std::string &args, Xapian::timeout timeout=10000)
| Construct a Database object for read-only access to a remote database accessed via a program.

## Detailed Description

Factory functions for constructing Database and WritableDatabase objects.