NCBI C++ ToolKit
Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
CStlOneArgTemplate Class Reference

Search Toolkit Book for CStlOneArgTemplate

#include <serial/impl/stltypesimpl.hpp>

+ Inheritance diagram for CStlOneArgTemplate:
+ Collaboration diagram for CStlOneArgTemplate:

Public Types

typedef bool(* TIsDefaultFunction) (TConstObjectPtr objectPtr)
typedef void(* TSetDefaultFunction) (TObjectPtr objectPtr)
- Public Types inherited from CContainerTypeInfo
typedef bool(* TInitIteratorConst) (CConstIterator &)
typedef void(* TReleaseIteratorConst) (CConstIterator &)
typedef void(* TCopyIteratorConst) (CConstIterator &, const CConstIterator &)
typedef bool(* TNextElementConst) (CConstIterator &)
typedef TConstObjectPtr(* TGetElementPtrConst) (const CConstIterator &)
typedef bool(* TInitIterator) (CIterator &)
typedef void(* TReleaseIterator) (CIterator &)
typedef void(* TCopyIterator) (CIterator &, const CIterator &)
typedef bool(* TNextElement) (CIterator &)
typedef TObjectPtr(* TGetElementPtr) (const CIterator &)
typedef bool(* TEraseElement) (CIterator &)
typedef void(* TEraseAllElements) (CIterator &)
typedef TObjectPtr(* TAddElement) (const CContainerTypeInfo *cType, TObjectPtr cPtr, TConstObjectPtr ePtr, ESerialRecursionMode how)
typedef TObjectPtr(* TAddElementIn) (const CContainerTypeInfo *cType, TObjectPtr cPtr, CObjectIStream &in)
typedef size_t(* TGetElementCount) (const CContainerTypeInfo *cType, TConstObjectPtr containerPtr)
typedef void(* TReserveElements) (const CContainerTypeInfo *cType, TObjectPtr cPtr, size_t new_count)
- Public Types inherited from CTypeInfo
enum  EMayContainType { eMayContainType_no , eMayContainType_recursion , eMayContainType_yes }
typedef TObjectPtr(* TTypeCreate) (TTypeInfo objectType, CObjectMemoryPool *memoryPool)

Public Member Functions

 CStlOneArgTemplate (size_t size, TTypeInfo dataType, bool randomOrder, const string &name)
 CStlOneArgTemplate (size_t size, TTypeInfo dataType, bool randomOrder)
 CStlOneArgTemplate (size_t size, const CTypeRef &dataType, bool randomOrder)
const CMemberIdGetDataId (void) const
void SetDataId (const CMemberId &id)
virtual bool IsDefault (TConstObjectPtr objectPtr) const override
 Check, whether the object contains default value. More...
virtual void SetDefault (TObjectPtr objectPtr) const override
 Set object to default value. More...
void SetMemFunctions (TTypeCreate create, TIsDefaultFunction isDefault, TSetDefaultFunction setDefault)
- Public Member Functions inherited from CContainerTypeInfo
 CContainerTypeInfo (size_t size, TTypeInfo elementType, bool randomOrder)
 CContainerTypeInfo (size_t size, const CTypeRef &elementType, bool randomOrder)
 CContainerTypeInfo (size_t size, const char *name, TTypeInfo elementType, bool randomOrder)
 CContainerTypeInfo (size_t size, const char *name, const CTypeRef &elementType, bool randomOrder)
 CContainerTypeInfo (size_t size, const string &name, TTypeInfo elementType, bool randomOrder)
 CContainerTypeInfo (size_t size, const string &name, const CTypeRef &elementType, bool randomOrder)
TTypeInfo GetElementType (void) const
bool RandomElementsOrder (void) const
virtual EMayContainType GetMayContainType (TTypeInfo type) const override
virtual void Assign (TObjectPtr dst, TConstObjectPtr src, ESerialRecursionMode how=eRecursive) const override
 Set object to copy of another one. More...
virtual bool Equals (TConstObjectPtr object1, TConstObjectPtr object2, ESerialRecursionMode how=eRecursive) const override
 Check if both objects contain the same values. More...
bool InitIterator (CConstIterator &it, TConstObjectPtr containerPtr) const
void ReleaseIterator (CConstIterator &it) const
void CopyIterator (CConstIterator &dst, const CConstIterator &src) const
bool NextElement (CConstIterator &it) const
TConstObjectPtr GetElementPtr (const CConstIterator &it) const
bool InitIterator (CIterator &it, TObjectPtr containerPtr) const
void ReleaseIterator (CIterator &it) const
void CopyIterator (CIterator &dst, const CIterator &src) const
bool NextElement (CIterator &it) const
TObjectPtr GetElementPtr (const CIterator &it) const
bool EraseElement (CIterator &it) const
void EraseAllElements (CIterator &it) const
TObjectPtr AddElement (TObjectPtr containerPtr, TConstObjectPtr elementPtr, ESerialRecursionMode how=eRecursive) const
TObjectPtr AddElement (TObjectPtr containerPtr, CObjectIStream &in) const
size_t GetElementCount (TConstObjectPtr containerPtr) const
void ReserveElements (TObjectPtr containerPtr, size_t new_count) const
void SetConstIteratorFunctions (TInitIteratorConst, TReleaseIteratorConst, TCopyIteratorConst, TNextElementConst, TGetElementPtrConst)
void SetIteratorFunctions (TInitIterator, TReleaseIterator, TCopyIterator, TNextElement, TGetElementPtr, TEraseElement, TEraseAllElements)
void SetAddElementFunctions (TAddElement, TAddElementIn)
void SetCountFunctions (TGetElementCount, TReserveElements=0)
- Public Member Functions inherited from CTypeInfo
virtual ~CTypeInfo (void)
ETypeFamily GetTypeFamily (void) const
const stringGetName (void) const
 Get name of this type. More...
bool HasNamespaceName (void) const
 Check if data type has namespace name. More...
const stringGetNamespaceName (void) const
 Get namespace name. More...
const CTypeInfoSetNamespaceName (const string &ns_name) const
 Set namespace name. More...
const CTypeInfoSetNsQualified (bool qualified) const
 Set namespace 'qualified' property. More...
ENsQualifiedMode IsNsQualified (void) const
 Get namespace 'qualified' property. More...
bool HasNamespacePrefix (void) const
 Check if data type has namespace prefix. More...
const stringGetNamespacePrefix (void) const
 Get namespace prefix. More...
void SetNamespacePrefix (const string &ns_prefix) const
 Set namespace prefix. More...
virtual const stringGetModuleName (void) const
 Get module name. More...
void SetModuleName (const string &name)
 Set module name. More...
void SetModuleName (const char *name)
 Set module name. More...
size_t GetSize (void) const
 Get size of data object in memory (like sizeof in C) More...
TObjectPtr Create (CObjectMemoryPool *memoryPool=0) const
 Create object of this type on heap (can be deleted by operator delete) More...
virtual void Delete (TObjectPtr object) const
 Delete object. More...
virtual void DeleteExternalObjects (TObjectPtr object) const
bool IsCObject (void) const
 Check is this TypeInfo object is kind of CClassTypeInfoBase. More...
virtual const CObjectGetCObjectPtr (TConstObjectPtr objectPtr) const
virtual TTypeInfo GetRealTypeInfo (TConstObjectPtr object) const
const CSerialUserOpAsCSerialUserOp (TConstObjectPtr obj) const
CSerialUserOpAsCSerialUserOp (TObjectPtr obj) const
bool IsInternal (void) const
 Check if this TypeInfo describes internal unnamed type. More...
const stringGetInternalName (void) const
 Return internal type access string e.g. Int-fuzz.range. More...
const stringGetInternalModuleName (void) const
 Return internal type's owner module name. More...
void SetInternalName (const string &name)
 Mark this type as internal. More...
const stringGetAccessName (void) const
 Return internal or regular name. More...
const stringGetAccessModuleName (void) const
 Return internal or regular module name. More...
void ReadData (CObjectIStream &in, TObjectPtr object) const
void WriteData (CObjectOStream &out, TConstObjectPtr object) const
void CopyData (CObjectStreamCopier &copier) const
void SkipData (CObjectIStream &in) const
virtual bool IsParentClassOf (const CClassTypeInfo *classInfo) const
virtual bool IsType (TTypeInfo type) const
bool MayContainType (TTypeInfo type) const
EMayContainType IsOrMayContainType (TTypeInfo type) const
void SetGlobalReadHook (CReadObjectHook *hook)
 Set global (for all input streams) read hook. More...
void SetLocalReadHook (CObjectIStream &in, CReadObjectHook *hook)
 Set local (for a specific input stream) read hook. More...
void ResetGlobalReadHook (void)
 Reset global read hooks. More...
void ResetLocalReadHook (CObjectIStream &in)
 Reset local read hook. More...
void SetPathReadHook (CObjectIStream *in, const string &path, CReadObjectHook *hook)
 Set local context-specific read hook. More...
void SetGlobalWriteHook (CWriteObjectHook *hook)
 Set global (for all input streams) write hook. More...
void SetLocalWriteHook (CObjectOStream &out, CWriteObjectHook *hook)
 Set local (for a specific input stream) write hook. More...
void ResetGlobalWriteHook (void)
 Reset global write hooks. More...
void ResetLocalWriteHook (CObjectOStream &out)
 Reset local write hook. More...
void SetPathWriteHook (CObjectOStream *out, const string &path, CWriteObjectHook *hook)
 Set local context-specific write hook. More...
void SetLocalSkipHook (CObjectIStream &in, CSkipObjectHook *hook)
 Set local (for a specific input stream) skip hook. More...
void ResetLocalSkipHook (CObjectIStream &in)
 Reset local skip hook. More...
void SetPathSkipHook (CObjectIStream *in, const string &path, CSkipObjectHook *hook)
 Set local context-specific skip hook. More...
void SetGlobalCopyHook (CCopyObjectHook *hook)
 Set global (for all input streams) copy hook. More...
void SetLocalCopyHook (CObjectStreamCopier &copier, CCopyObjectHook *hook)
 Set local (for a specific input stream) copy hook. More...
void ResetGlobalCopyHook (void)
 Reset global copy hooks. More...
void ResetLocalCopyHook (CObjectStreamCopier &copier)
 Reset local copy hook. More...
void SetPathCopyHook (CObjectStreamCopier *copier, const string &path, CCopyObjectHook *hook)
 Set local context-specific copy hook. More...
void DefaultReadData (CObjectIStream &in, TObjectPtr object) const
void DefaultWriteData (CObjectOStream &out, TConstObjectPtr object) const
void DefaultCopyData (CObjectStreamCopier &copier) const
void DefaultSkipData (CObjectIStream &in) const
CTypeInfoSetTagType (CAsnBinaryDefs::ETagType ttype)
CAsnBinaryDefs::ETagType GetTagType (void) const
bool IsTagImplicit (void) const
virtual CTypeInfoSetTag (CAsnBinaryDefs::TLongTag tag, CAsnBinaryDefs::ETagClass tagclass=CAsnBinaryDefs::eUniversal, CAsnBinaryDefs::ETagType tagtype=CAsnBinaryDefs::eAutomatic)
CAsnBinaryDefs::TLongTag GetTag (void) const
bool HasTag (void) const
CAsnBinaryDefs::ETagClass GetTagClass (void) const
CAsnBinaryDefs::ETagConstructed GetTagConstructed (void) const
bool IsTagConstructed (void) const
void CodeVersion (size_t codever)
size_t GetCodeVersion (void) const
void DataSpec (EDataSpec spec)
EDataSpec GetDataSpec (void) const
void CopyInfoItem (TTypeInfo other)

Private Types

typedef CContainerTypeInfo CParent

Private Attributes

TIsDefaultFunction m_IsDefault
TSetDefaultFunction m_SetDefault
CMemberId m_DataId

Additional Inherited Members

- Protected Types inherited from CTypeInfo
enum  { eNoExplicitTag = -1 }
- Protected Member Functions inherited from CTypeInfo
 CTypeInfo (ETypeFamily typeFamily, size_t size)
 CTypeInfo (ETypeFamily typeFamily, size_t size, const char *name)
 CTypeInfo (ETypeFamily typeFamily, size_t size, const string &name)
void SetCreateFunction (TTypeCreate func)
void SetReadFunction (TTypeReadFunction func)
TTypeReadFunction GetReadFunction (void) const
void SetWriteFunction (TTypeWriteFunction func)
void SetCopyFunction (TTypeCopyFunction func)
void SetSkipFunction (TTypeSkipFunction func)
- Static Protected Member Functions inherited from CContainerTypeInfo
static void ReadContainer (CObjectIStream &in, TTypeInfo objectType, TObjectPtr objectPtr)
static void WriteContainer (CObjectOStream &out, TTypeInfo objectType, TConstObjectPtr objectPtr)
static void SkipContainer (CObjectIStream &in, TTypeInfo objectType)
static void CopyContainer (CObjectStreamCopier &copier, TTypeInfo objectType)
- Protected Attributes inherited from CContainerTypeInfo
CTypeRef m_ElementType
bool m_RandomOrder
- Protected Attributes inherited from CTypeInfo
bool m_IsCObject
bool m_IsInternal
CAsnBinaryDefs::TLongTag m_Tag
CAsnBinaryDefs::ETagClass m_TagClass
CAsnBinaryDefs::ETagType m_TagType
CAsnBinaryDefs::ETagConstructed m_TagConstructed
atomic< ETriStatem_CSerialUserOp

Detailed Description

Definition at line 79 of file stltypesimpl.hpp.

The documentation for this class was generated from the following files:
Modified on Fri Jul 12 16:26:17 2024 by rev. 669887