Classes | |
class | PackDynamicType |
PackDynamicType serializes and manages an enumeration number (like PackULong_Enums) that define the shape of what is serialized with. the different shapes have to be registered through RegisterShapeConstructors() at construction, so it has to be extended to be active. See exemple in VedaLibImage / PackDynamicFloat. More... | |
class | PackFloat |
Base type managing a serializable float value. a float type is serialized to 3 bytes, or 1 byte if value is 0.0f. once read, the 4th IEEE float byte is always set to 0, so that the mantissa is only 15 bit long, not 23 as usual. PackFloat, like all its inherited classes, can be inited with a special constructor where you use a VectorDimension enum. You can choose to init a PackFloat with PackFloat::vd_X if you need one dimension o represent a value, or use vd_XY, for example to define a 2D vector, vd_XYZ for a 3D vector, or vd_XYZD for a dated 3D vector. Note extension library VedaLibMath 's VirtualEquation::Compute() was based on float[4] parameters. More... | |
class | PackFloat_FixedPoint |
Base type managing a float, but serialized like a PackLong. You provide a const number at construction that fixes a number of bit after the point. For example, 1 bit after the point will make possible: 0.0f , 0.5f, 1.0f, 1.5f,... 2 bits after the point will manage: 0.0f,0.25f,0.5f,0.75f,1.0f,1.25f,... More... | |
class | PackFloatByte_Color |
It specify PackFloatByte_Limits to express a R,G,B color. this specification is adressed with GetClassID() to interfaces. in non-editable mode, it is PackFloatByte_Limits typedef. More... | |
class | PackFloatByte_Limits |
manage a float value, but serialize it in 1 byte, where the 256 value domain is scaled between 2 float given at inition. default ends are:[ 0.0f , 1.0f [ More... | |
class | PackList |
Base type managing a list of any PackSerializable (or inherited) Objects from the same class. In edition mode, you can grow or shorten the list. GetFirstCell() give you a first 'PackListCell', then you can scan the list element with PackListCell::GetNextBrotherCell() and PackListCell::GetManagedObject(). More... | |
class | PackList_TimeBlockTrack |
List that defines a set of TimeTrackElement extended objects. the difference with PackList_TimeTrack is that elements serialize block length and not dates... More... | |
class | PackList_TimeTrack |
List that defines a set of TimeTrackElement extended objects. Each elements define when they begin, when they end, and an order number, which is different from zero if another element is in the same time range. The Goal with this class is to unify the ways to create timed lists, that can be managed by a single GUI gadget for script or spline management. It was actually made to be used in spline key list, a script manager this is only a simple serializable class. More... | |
class | PackLong |
Base type managing "28 bit relative integer", which serialize a number between [-(256Mb-1),256Mb-1], which can be written on 1, 2,3 or 4 bytes when needed. It is used for the automated serialization managed by class PackStruct. It outputs a "signed int" you access with Get(). More... | |
class | PackLong_WithLimits |
PackLong_WithLimits specialize PackLong to define a min and max value possible for this signed integer value. Specify these min,max after serialisation member registration. When compiled as non-editable, this class become a classic PackLong, nothing more is compiled. More... | |
class | PackObjectReference |
Base type managing a serializable reference to another object in the same context. a BaseObject can use a PackObjectReference as a member, and when registering it, you specify a pointable base class. Then the PackObjectReference will be able to point any object in the context that match this pointable class, or its inherited classes. You get the pointer with GetObjectPointer(). Getting NULL is valid, and simply means that nothing is pointed. You change the pointer with SetObjectPointer(), and you should check its enum_SetReferenceResult errorcode. Please, don't stock a pointer from GetObjectPointer() elsewhere between two functions, because PackObjectReference are dynamic pointers, that can change or become NULL during edition. Registering a PackObjectReference member in a BaseObject constructor can look like this:. More... | |
class | PackResource |
Base type managing a file as a resource. the file can be external, on the disk, or internal, which means linked into the serialized context. In all compilation modes, You get the resource with GetBinary(). In editable mode, you can set a binary file You Set() and Get() a file name relative to the executable path, and choose if it should be linked while serialized, or just read from the file at inition. In all cases, you get the binary with GetBinary() It is used for the automated serialization. More... | |
class | PackString |
Base type managing a zero-ended ascii string. It is used for the automated serialization. More... | |
class | PackString_MultipleLines |
Extension to PackString to manages long texts with multiple lines. When used in non editable compilation mode, it is cast as a PackString. More... | |
class | PackStruct |
Base type managing a suit of any PackSerializable (or inherited) Objects, which types are differents but can't be changed. To use a PackStruct, register a list of PackSerializable objects in construction. This objects must be already allocated. PackStruct doesn't manage the existance of the listed objects. It just allows to re-serialize their values. This list must not vary in the life of the object, so that it can be serialized in and out again and again. For a dynamic List handling objects from the same class, look: PackList. More... | |
class | PackTreeCell |
base type managing a Tree database of any PackSerializable (or inherited) Objects. the object type managed is unique and defined at construction, by passing a function that do return a new object. More... | |
class | PackULong |
Base type managing "28 bit unsigned long", which serialize a number between [0,512Mb-1], which can be written on 1, 2,3 or 4 bytes when needed. It is used for the automated serialization managed by class PackStruct. It outputs an "unsigned int" you access with Get(). More... | |
class | PackULong_Enums |
PackULong_Enums specialize PackULong to define from 1 to 28 bit bitfield where each bit stands as a boolean value with a given meaning. More... | |
class | PackULong_Flags |
PackULong_Flags specialize PackULong to define from 1 to 28 bit bitfield where each bit stands as a boolean value with a given meaning. More... | |
class | PackULong_RandomSeed |
PackULong_RandomSeed specializes PackULong to express a random number seed generator, and provide a random function, for procedural purposes. PackULong is a base type managing "28 bit unsigned long", which serializes a number between [0,512Mb-1], which can be written on 1, 2,3 or 4 bytes when needed. More... |
/\/\ 4 N k ! N D _______ _ __ ___ _____ ___ _ _ ____ ___________ __//___ /________ |/ / ___________\_______/ \ / _ _ \/ _ / _ / _/_/____/ _ __ / / / / / / / \ \/ / / \ \ / \\___/___/___/ ¯ _____/_____/ ______\___/_____/\________\\ \________/_ ___ __ l____\ /elD! http://www.m4nkind.com \____/