Nebula
Toggle main menu visibility
Loading...
Searching...
No Matches
dbfactory.h
Go to the documentation of this file.
1
#pragma once
2
#ifndef DB_DbFactory_H
3
#define DB_DbFactory_H
4
//------------------------------------------------------------------------------
14
#include "
core/refcounted.h
"
15
#include "
core/singleton.h
"
16
17
//------------------------------------------------------------------------------
18
namespace
Db
19
{
20
class
Database;
21
class
Command;
22
class
Table;
23
class
Dataset;
24
class
FilterSet;
25
class
Relation;
26
class
ValueTable;
27
class
Reader;
28
class
Writer;
29
30
class
DbFactory
:
public
Core::RefCounted
31
{
32
__DeclareClass
(
DbFactory
);
33
__DeclareSingleton
(
DbFactory
);
34
public
:
36
DbFactory
();
38
virtual
~DbFactory
();
40
virtual
Ptr<Table>
CreateTable
()
const
;
42
virtual
Ptr<Database>
CreateDatabase
()
const
;
44
virtual
Ptr<Command>
CreateCommand
()
const
;
46
virtual
Ptr<Relation>
CreateRelation
()
const
;
48
virtual
Ptr<Reader>
CreateReader
()
const
;
50
virtual
Ptr<Writer>
CreateWriter
()
const
;
51
52
protected
:
53
friend
class
Database
;
54
friend
class
Table
;
55
friend
class
Dataset
;
56
friend
class
Writer
;
57
friend
class
Reader
;
58
60
virtual
Ptr<Dataset>
CreateDataset
()
const
;
62
virtual
Ptr<ValueTable>
CreateValueTable
()
const
;
64
virtual
Ptr<FilterSet>
CreateFilterSet
()
const
;
65
};
66
67
}
// namespace Db
68
//------------------------------------------------------------------------------
69
#endif
Core::RefCounted
The common base class of Nebula.
Definition
refcounted.h:38
Db::DbFactory::__DeclareSingleton
__DeclareSingleton(DbFactory)
Db::DbFactory::DbFactory
DbFactory()
constructor
Definition
dbfactory.cc:25
Db::DbFactory::__DeclareClass
__DeclareClass(DbFactory)
Db::DbFactory::CreateDataset
virtual Ptr< Dataset > CreateDataset() const
create a dataset object
Definition
dbfactory.cc:72
Db::DbFactory::CreateTable
virtual Ptr< Table > CreateTable() const
create a table object
Definition
dbfactory.cc:62
Db::DbFactory::Reader
friend class Reader
Definition
dbfactory.h:57
Db::DbFactory::CreateCommand
virtual Ptr< Command > CreateCommand() const
create a command object
Definition
dbfactory.cc:52
Db::DbFactory::~DbFactory
virtual ~DbFactory()
destructor
Definition
dbfactory.cc:33
Db::DbFactory::CreateFilterSet
virtual Ptr< FilterSet > CreateFilterSet() const
create a filter object
Definition
dbfactory.cc:82
Db::DbFactory::Database
friend class Database
Definition
dbfactory.h:53
Db::DbFactory::CreateReader
virtual Ptr< Reader > CreateReader() const
create a database reader
Definition
dbfactory.cc:110
Db::DbFactory::CreateDatabase
virtual Ptr< Database > CreateDatabase() const
create a database object
Definition
dbfactory.cc:42
Db::DbFactory::CreateWriter
virtual Ptr< Writer > CreateWriter() const
create a database writer
Definition
dbfactory.cc:119
Db::DbFactory::CreateRelation
virtual Ptr< Relation > CreateRelation() const
create a relation object
Definition
dbfactory.cc:92
Db::DbFactory::Writer
friend class Writer
Definition
dbfactory.h:56
Db::DbFactory::Dataset
friend class Dataset
Definition
dbfactory.h:55
Db::DbFactory::CreateValueTable
virtual Ptr< ValueTable > CreateValueTable() const
create a value table
Definition
dbfactory.cc:101
Db::DbFactory::Table
friend class Table
Definition
dbfactory.h:54
Ptr
Nebula's smart pointer class which manages the life time of RefCounted objects.
Definition
ptr.h:38
Db
Definition
column.cc:10
refcounted.h
singleton.h
code
addons
db
dbfactory.h
Generated on
for Nebula. Dark theme by
Tilen Majerle
. All rights reserved.