librcsb-core-wrapper
1.000
Main Page
Namespaces
Classes
Files
File List
File Members
rcsb
DictObjContInfo.h
Go to the documentation of this file.
1
//$$FILE$$
2
//$$VERSION$$
3
//$$DATE$$
4
//$$LICENSE$$
5
6
15
#ifndef DICTOBJCONTINFO_H
16
#define DICTOBJCONTINFO_H
17
18
19
#include <string>
20
#include <map>
21
22
#include <
rcsb/Serializer.h
>
23
#include <
rcsb/rcsb_types.h
>
24
#include <
rcsb/CifString.h
>
25
26
39
class
ObjContInfo
40
{
41
public
:
47
class
Item
48
{
49
public
:
50
std::string
descr
;
51
std::string
itemName
;
52
};
53
59
class
Cat
60
{
61
public
:
62
std::string
catName
;
63
std::string
col1
;
64
bool
nonDefaultValue
;
65
bool
inheritance
;
66
std::vector<Item>
items
;
67
};
68
69
std::string
_objContInfoDescr
;
70
71
std::vector<Cat>
_cats
;
72
73
std::map<std::pair<std::string, std::string>, std::pair<
unsigned
int,
74
unsigned
int
> >
_catMap
;
75
80
void
AddCat
(
const
std::string& catName);
81
86
void
AddCat
(
const
std::string& catName,
const
std::string& col1,
87
const
bool
nonDefaultValue =
false
,
const
bool
inheritance =
false
);
88
93
void
AddItem
(
const
std::string& descr,
const
std::string& itemName);
94
99
unsigned
int
GetItemIndex
(
const
std::string& catName,
100
const
std::string& itemName)
const
;
101
106
std::pair<unsigned int, unsigned int>
GetItemIndices
(
107
const
std::string& catName,
const
std::string& itemName)
const
;
108
109
#ifndef VLAD_PYTHON_GLUE
110
114
virtual
~ObjContInfo
();
115
#endif
116
117
protected
:
122
ObjContInfo
();
123
124
private
:
125
std::vector<Cat>::iterator currCat;
126
};
127
128
135
class
DictObjContInfo
:
public
ObjContInfo
136
{
137
public
:
138
static
DictObjContInfo
&
GetInstance
();
139
140
private
:
141
DictObjContInfo
();
142
DictObjContInfo
(
const
DictObjContInfo
& in);
143
144
~
DictObjContInfo
();
145
146
DictObjContInfo
& operator=(
const
DictObjContInfo
& in);
147
};
148
149
156
class
CatObjContInfo
:
public
ObjContInfo
157
{
158
public
:
159
static
CatObjContInfo
&
GetInstance
();
160
161
private
:
162
CatObjContInfo
();
163
CatObjContInfo
(
const
CatObjContInfo
& in);
164
165
~
CatObjContInfo
();
166
167
CatObjContInfo
& operator=(
const
CatObjContInfo
& in);
168
};
169
170
177
class
SubcatObjContInfo
:
public
ObjContInfo
178
{
179
public
:
180
static
SubcatObjContInfo
&
GetInstance
();
181
182
private
:
183
SubcatObjContInfo
();
184
SubcatObjContInfo
(
const
SubcatObjContInfo
& in);
185
186
~
SubcatObjContInfo
();
187
188
SubcatObjContInfo
& operator=(
const
SubcatObjContInfo
& in);
189
};
190
191
198
class
ItemObjContInfo
:
public
ObjContInfo
199
{
200
public
:
201
static
ItemObjContInfo
&
GetInstance
();
202
203
private
:
204
ItemObjContInfo
();
205
ItemObjContInfo
(
const
ItemObjContInfo
& in);
206
207
~
ItemObjContInfo
();
208
209
ItemObjContInfo
& operator=(
const
ItemObjContInfo
& in);
210
};
211
212
213
#endif // DICTOBJCONTINFO_H
Generated on Thu May 30 2013 06:21:58 for librcsb-core-wrapper by
1.8.3.1