git-svn-id: svn://db.shs.com.ru/pip@824 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -30,7 +30,9 @@ class PIP_EXPORT PIIntrospectionContainers {
|
||||
public:
|
||||
PIIntrospectionContainers();
|
||||
|
||||
void containerNew (const char * tn);
|
||||
struct TypeInfo;
|
||||
|
||||
void containerNew (const char * tn, uint isz);
|
||||
void containerDelete(const char * tn);
|
||||
void containerAlloc (const char * tn, ullong cnt);
|
||||
void containerFree (const char * tn, ullong cnt);
|
||||
@@ -39,23 +41,30 @@ public:
|
||||
|
||||
uint typeID(const char * tn);
|
||||
|
||||
struct Type {
|
||||
Type();
|
||||
PIVector<TypeInfo> getInfo() const;
|
||||
|
||||
#pragma pack(push, 1)
|
||||
struct _Type {
|
||||
_Type();
|
||||
uint id;
|
||||
uint count;
|
||||
uint items;
|
||||
ullong bytes_allocated;
|
||||
ullong bytes_used;
|
||||
uint item_size;
|
||||
ullong allocated;
|
||||
ullong used;
|
||||
};
|
||||
#pragma pack(pop)
|
||||
|
||||
struct TypeInfo: _Type {
|
||||
PIString name;
|
||||
};
|
||||
|
||||
std::map<uint, Type> data;
|
||||
std::map<uint, _Type> data;
|
||||
std::map<uint, std::string> typenames;
|
||||
PIMutex mutex;
|
||||
mutable PIMutex mutex;
|
||||
CRC_32 crc;
|
||||
};
|
||||
|
||||
PIByteArray & operator <<(PIByteArray & s, const std::map<uint, std::string> & v);
|
||||
|
||||
PIByteArray & operator <<(PIByteArray & s, const PIIntrospectionContainers::Type & v);
|
||||
PIByteArray & operator >>(PIByteArray & s, PIIntrospectionContainers::Type & v);
|
||||
PIByteArray & operator <<(PIByteArray & s, const PIIntrospectionContainers::TypeInfo & v);
|
||||
PIByteArray & operator >>(PIByteArray & s, PIIntrospectionContainers::TypeInfo & v);
|
||||
|
||||
#endif // PIINTROSPECTION_CONTAINERS_P_H
|
||||
|
||||
Reference in New Issue
Block a user