Index: src/libchcore/ISerializerContainer.h =================================================================== diff -u -N -r4a7f28238afbf60b9e3f3daeffe590ff1638ec74 -r9479911a096555a7504c5c8a8eaee83ecb63440c --- src/libchcore/ISerializerContainer.h (.../ISerializerContainer.h) (revision 4a7f28238afbf60b9e3f3daeffe590ff1638ec74) +++ src/libchcore/ISerializerContainer.h (.../ISerializerContainer.h) (revision 9479911a096555a7504c5c8a8eaee83ecb63440c) @@ -20,13 +20,29 @@ #define __ISERIALIZERCONTAINER_H__ #include "libchcore.h" +#include "IColumnsDefinition.h" +#include "ISerializerRowReader.h" BEGIN_CHCORE_NAMESPACE +class ISerializerRowWriter; +typedef boost::shared_ptr ISerializerRowWriterPtr; + class LIBCHCORE_API ISerializerContainer { public: virtual ~ISerializerContainer(); + + // columns + virtual IColumnsDefinitionPtr GetColumnsDefinition() const = 0; + + // prepare data to be stored + virtual ISerializerRowWriterPtr AddRow(size_t stRowID) = 0; + virtual ISerializerRowWriterPtr GetRow(size_t stRowID) = 0; + virtual void DeleteRow(size_t stRowID) = 0; + + // getting data from the serialized archive + virtual ISerializerRowReaderPtr GetRowReader() = 0; }; typedef boost::shared_ptr ISerializerContainerPtr;