20#include "hurricane/Name.h"
21#include "hurricane/Property.h"
22#include "hurricane/Slot.h"
23#include "hurricane/DBo.h"
28 using Hurricane::Record;
29 using Hurricane::Name;
31 using Hurricane::PrivateProperty;
46 extern PyTypeObject PyTypeAttributesHolder;
55 friend class PythonAttributes;
60 static PyHolderProperty* create (
DBo* );
61 static Name getPropertyName ();
64 inline int32_t getDictSize ();
65 int32_t delattr ( std::string );
66 virtual void onReleasedBy (
DBo* owner );
67 virtual std::string _getTypeName ()
const;
68 virtual std::string _getString ()
const;
69 virtual Record* _getRecord ()
const;
71 virtual void _preDestroy ();
78 inline PyHolderProperty ();
82 inline PyHolderProperty::PyHolderProperty ()
87 inline PyAttributesHolder* PyHolderProperty::getHolder () {
return _holder; }
88 inline int32_t PyHolderProperty::getDictSize () {
return PyDict_Size( _holder->dict ); }
102 static int32_t count ();
DataBase object root class (API).
Definition DBo.h:45
Name description (API).
Definition Name.h:35
PrivateProperty description (API).
Definition Property.h:132
virtual Name getName() const =0
A Property to contain PyAttributesHolder.
Definition PythonAttributes.h:54
A Property to store Python objects (API).
Definition PythonAttributes.h:94
static void disable(DBo *)
static void disableAll(std::string)
static void enable(DBo *)
static int32_t delattr(DBo *, std::string)
static PyAttributesHolder * get(const DBo *)
A simple Python object to store attributes.
Definition PythonAttributes.h:40