20#ifndef HURRICANE_DATA_BASE
21#define HURRICANE_DATA_BASE
25#include "hurricane/DBo.h"
26#include "hurricane/DbU.h"
47 public:
enum Flags { NoFlags = 0
49 , WarnCreateLib=(1<<2) };
67 protected:
virtual void _postCreate();
69 protected:
virtual void _preDestroy();
71 public:
virtual void _toJson(JsonWriter*)
const;
72 public:
virtual string _getTypeName()
const {
return _TName(
"DataBase");};
73 public:
virtual string _getString()
const;
74 public:
virtual Record* _getRecord()
const;
76 public:
void _setTechnology(
Technology* technology) {_technology = technology;};
77 public:
void _setRootLibrary(
Library* rootLibrary) {_rootLibrary = rootLibrary;};
78 public:
void _setCellLoader(function<
Hurricane::Cell*(
string)> loader) { _cellLoader=loader; };
87 public:
Library* getLibrary(
string,
unsigned int flags);
88 public:
Cell* getCell(
string,
unsigned int flags);
89 public:
Cell* getCell(
string);
101class JsonDataBase :
public JsonDBo {
104 public:
static void initialize();
105 public: JsonDataBase(
unsigned long flags);
106 public:
virtual string getTypeName()
const;
107 public:
virtual JsonDataBase* clone(
unsigned long)
const;
The model (API).
Definition Cell.h:64
DataBase object root class (API).
Definition DBo.h:45
The whole DataBase (API).
Definition DataBase.h:40
Technology * getTechnology() const
Definition DataBase.h:85
Library * getRootLibrary() const
Definition DataBase.h:86
static DataBase * getDB()
static DataBase * create()
JSON Parser Stack.
Definition JsonObject.h:249
Library description (API)
Definition Library.h:38
Technological rules description (API).
Definition Technology.h:62
Contains Almost Everything.
Definition BasicLayer.h:39