Nebula
Toggle main menu visibility
Loading...
Searching...
No Matches
dataset.h
Go to the documentation of this file.
1
#pragma once
2
#ifndef DB_DATASET_H
3
#define DB_DATASET_H
4
//------------------------------------------------------------------------------
31
#include "
core/refcounted.h
"
32
#include "db/filterset.h"
33
#include "
db/valuetable.h
"
34
#include "
db/relation.h
"
35
36
//------------------------------------------------------------------------------
37
namespace
Db
38
{
39
class
Database;
40
class
Table;
41
42
class
Dataset
:
public
Core::RefCounted
43
{
44
__DeclareClass
(
Dataset
);
45
public
:
47
Dataset
();
49
virtual
~Dataset
();
50
52
void
AddColumn
(
const
Attr::AttrId
& attrId);
54
void
AddAllTableColumns
();
56
const
Ptr<Table>
&
GetTable
()
const
;
58
const
Ptr<FilterSet>
&
Filter
();
60
const
Ptr<ValueTable>
&
Values
();
61
63
virtual
void
PerformQuery
(
bool
appendResult=
false
);
65
virtual
void
CommitChanges
(
bool
newRowsAsUpdate=
false
);
67
virtual
void
CommitDeletedRows
();
68
69
protected
:
70
friend
class
Table
;
71
73
void
SetTable
(
const
Ptr<Table>
& t);
75
virtual
bool
Connect
();
77
virtual
void
Disconnect
();
79
bool
IsConnected
()
const
;
80
81
bool
isConnected
;
82
Ptr<Table>
table
;
83
Ptr<FilterSet>
filter
;
84
Ptr<ValueTable>
values
;
85
};
86
87
//------------------------------------------------------------------------------
90
inline
void
91
Dataset::SetTable
(
const
Ptr<Table>
& t)
92
{
93
n_assert
(0 != t);
94
this->
table
= t;
95
}
96
97
//------------------------------------------------------------------------------
100
inline
const
Ptr<Table>
&
101
Dataset::GetTable
()
const
102
{
103
return
this->
table
;
104
}
105
106
//------------------------------------------------------------------------------
109
inline
bool
110
Dataset::IsConnected
()
const
111
{
112
return
this->
isConnected
;
113
}
114
115
//------------------------------------------------------------------------------
118
inline
const
Ptr<FilterSet>
&
119
Dataset::Filter
()
120
{
121
return
this->
filter
;
122
}
123
124
//------------------------------------------------------------------------------
127
inline
const
Ptr<ValueTable>
&
128
Dataset::Values
()
129
{
130
return
this->
values
;
131
}
132
133
}
// namespace Db
134
//------------------------------------------------------------------------------
135
#endif
Attr::AttrId
An attribute ID is used to carry attribute types (no values) around.
Definition
attrid.h:20
Core::RefCounted
The common base class of Nebula.
Definition
refcounted.h:38
Db::Dataset::PerformQuery
virtual void PerformQuery(bool appendResult=false)
fill value table from database
Definition
dataset.cc:106
Db::Dataset::table
Ptr< Table > table
Definition
dataset.h:82
Db::Dataset::Disconnect
virtual void Disconnect()
disconnect from database table
Definition
dataset.cc:87
Db::Dataset::filter
Ptr< FilterSet > filter
Definition
dataset.h:83
Db::Dataset::GetTable
const Ptr< Table > & GetTable() const
get pointer to database table this set is associated with
Definition
dataset.h:101
Db::Dataset::SetTable
void SetTable(const Ptr< Table > &t)
set pointer to database table
Definition
dataset.h:91
Db::Dataset::CommitDeletedRows
virtual void CommitDeletedRows()
commit deleted rows only to the database
Definition
dataset.cc:132
Db::Dataset::Dataset
Dataset()
constructor
Definition
dataset.cc:18
Db::Dataset::Values
const Ptr< ValueTable > & Values()
access to value table
Definition
dataset.h:128
Db::Dataset::Filter
const Ptr< FilterSet > & Filter()
access to query filter
Definition
dataset.h:119
Db::Dataset::Connect
virtual bool Connect()
connect to database table
Definition
dataset.cc:70
Db::Dataset::__DeclareClass
__DeclareClass(Dataset)
Db::Dataset::values
Ptr< ValueTable > values
Definition
dataset.h:84
Db::Dataset::CommitChanges
virtual void CommitChanges(bool newRowsAsUpdate=false)
commit modified values to the database
Definition
dataset.cc:121
Db::Dataset::isConnected
bool isConnected
Definition
dataset.h:81
Db::Dataset::IsConnected
bool IsConnected() const
return true if the dataset is connected
Definition
dataset.h:110
Db::Dataset::AddAllTableColumns
void AddAllTableColumns()
add all the table columns to the dataset
Definition
dataset.cc:49
Db::Dataset::~Dataset
virtual ~Dataset()
destructor
Definition
dataset.cc:28
Db::Dataset::AddColumn
void AddColumn(const Attr::AttrId &attrId)
add the columns you're interested in
Definition
dataset.cc:37
Db::Dataset::Table
friend class Table
Definition
dataset.h:70
Ptr
Nebula's smart pointer class which manages the life time of RefCounted objects.
Definition
ptr.h:38
n_assert
#define n_assert(exp)
Definition
debug.h:50
Db
Definition
column.cc:10
refcounted.h
relation.h
valuetable.h
code
addons
db
dataset.h
Generated on
for Nebula. Dark theme by
Tilen Majerle
. All rights reserved.