NCBI C++ ToolKit
|
Search Toolkit Book for CUser_field_Base::C_Data
field contents More...
#include <objects/general/User_field_.hpp>
Public Types | |
enum | E_Choice { e_not_set = 0 , e_Str , e_Int , e_Real , e_Bool , e_Os , e_Object , e_Strs , e_Ints , e_Reals , e_Oss , e_Fields , e_Objects } |
Choice variants. More... | |
enum | E_ChoiceStopper { e_MaxChoice = 13 } |
Maximum+1 value of the choice variant enumerator. More... | |
typedef CStringUTF8 | TStr |
typedef int | TInt |
typedef double | TReal |
typedef bool | TBool |
typedef vector< char > | TOs |
typedef CUser_object | TObject |
typedef vector< CStringUTF8 > | TStrs |
typedef vector< int > | TInts |
typedef vector< double > | TReals |
typedef vector< vector< char > * > | TOss |
typedef vector< CRef< CUser_field > > | TFields |
typedef vector< CRef< CUser_object > > | TObjects |
![]() | |
enum | EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern } |
Control filling of newly allocated memory. More... | |
typedef CObjectCounterLocker | TLockerType |
Default locker type for CRef. More... | |
typedef atomic< Uint8 > | TCounter |
Counter type is CAtomiCounter. More... | |
typedef Uint8 | TCount |
Alias for value type of counter. More... | |
Public Member Functions | |
C_Data (void) | |
~C_Data (void) | |
DECLARE_INTERNAL_TYPE_INFO () | |
void | Reset (void) |
Reset the whole object. More... | |
void | ResetSelection (void) |
Reset the selection (set it to e_not_set). More... | |
E_Choice | Which (void) const |
Which variant is currently selected. More... | |
void | CheckSelected (E_Choice index) const |
Verify selection, throw exception if it differs from the expected. More... | |
void | ThrowInvalidSelection (E_Choice index) const |
Throw 'InvalidSelection' exception. More... | |
void | Select (E_Choice index, EResetVariant reset=eDoResetVariant) |
Select the requested variant if needed. More... | |
void | Select (E_Choice index, EResetVariant reset, CObjectMemoryPool *pool) |
Select the requested variant if needed, allocating CObject variants from memory pool. More... | |
bool | IsStr (void) const |
Check if variant Str is selected. More... | |
const TStr & | GetStr (void) const |
Get the variant data. More... | |
TStr & | SetStr (void) |
Select the variant. More... | |
void | SetStr (const TStr &value) |
Select the variant and set its data. More... | |
bool | IsInt (void) const |
Check if variant Int is selected. More... | |
TInt | GetInt (void) const |
Get the variant data. More... | |
TInt & | SetInt (void) |
Select the variant. More... | |
void | SetInt (TInt value) |
Select the variant and set its data. More... | |
bool | IsReal (void) const |
Check if variant Real is selected. More... | |
TReal | GetReal (void) const |
Get the variant data. More... | |
TReal & | SetReal (void) |
Select the variant. More... | |
void | SetReal (TReal value) |
Select the variant and set its data. More... | |
bool | IsBool (void) const |
Check if variant Bool is selected. More... | |
TBool | GetBool (void) const |
Get the variant data. More... | |
TBool & | SetBool (void) |
Select the variant. More... | |
void | SetBool (TBool value) |
Select the variant and set its data. More... | |
bool | IsOs (void) const |
Check if variant Os is selected. More... | |
const TOs & | GetOs (void) const |
Get the variant data. More... | |
TOs & | SetOs (void) |
Select the variant. More... | |
bool | IsObject (void) const |
Check if variant Object is selected. More... | |
const TObject & | GetObject (void) const |
Get the variant data. More... | |
TObject & | SetObject (void) |
Select the variant. More... | |
void | SetObject (TObject &value) |
Select the variant and set its data. More... | |
bool | IsStrs (void) const |
Check if variant Strs is selected. More... | |
const TStrs & | GetStrs (void) const |
Get the variant data. More... | |
TStrs & | SetStrs (void) |
Select the variant. More... | |
bool | IsInts (void) const |
Check if variant Ints is selected. More... | |
const TInts & | GetInts (void) const |
Get the variant data. More... | |
TInts & | SetInts (void) |
Select the variant. More... | |
bool | IsReals (void) const |
Check if variant Reals is selected. More... | |
const TReals & | GetReals (void) const |
Get the variant data. More... | |
TReals & | SetReals (void) |
Select the variant. More... | |
bool | IsOss (void) const |
Check if variant Oss is selected. More... | |
const TOss & | GetOss (void) const |
Get the variant data. More... | |
TOss & | SetOss (void) |
Select the variant. More... | |
bool | IsFields (void) const |
Check if variant Fields is selected. More... | |
const TFields & | GetFields (void) const |
Get the variant data. More... | |
TFields & | SetFields (void) |
Select the variant. More... | |
bool | IsObjects (void) const |
Check if variant Objects is selected. More... | |
const TObjects & | GetObjects (void) const |
Get the variant data. More... | |
TObjects & | SetObjects (void) |
Select the variant. More... | |
![]() | |
CSerialObject (void) | |
virtual | ~CSerialObject (void) |
virtual const CTypeInfo * | GetThisTypeInfo (void) const =0 |
virtual void | Assign (const CSerialObject &source, ESerialRecursionMode how=eRecursive) |
Set object to copy of another one. More... | |
virtual bool | Equals (const CSerialObject &object, ESerialRecursionMode how=eRecursive) const |
Check if both objects contain the same values. More... | |
virtual void | DebugDump (CDebugDumpContext ddc, unsigned int depth) const |
Define method for dumping debug information. More... | |
void | ThrowUnassigned (TMemberIndex index) const |
void | ThrowUnassigned (TMemberIndex index, const char *file_name, int file_line) const |
bool | HasNamespaceName (void) const |
Check if object data type has namespace name. More... | |
const string & | GetNamespaceName (void) const |
Get namespace name. More... | |
bool | HasNamespacePrefix (void) const |
Check if data type has namespace prefix. More... | |
const string & | GetNamespacePrefix (void) const |
Get namespace prefix. More... | |
![]() | |
CObject (void) | |
Constructor. More... | |
CObject (const CObject &src) | |
Copy constructor. More... | |
virtual | ~CObject (void) |
Destructor. More... | |
CObject & | operator= (const CObject &src) THROWS_NONE |
Assignment operator. More... | |
bool | CanBeDeleted (void) const THROWS_NONE |
Check if object can be deleted. More... | |
bool | IsAllocatedInPool (void) const THROWS_NONE |
Check if object is allocated in memory pool (not system heap) More... | |
bool | Referenced (void) const THROWS_NONE |
Check if object is referenced. More... | |
bool | ReferencedOnlyOnce (void) const THROWS_NONE |
Check if object is referenced only once. More... | |
void | AddReference (void) const |
Add reference to object. More... | |
void | RemoveReference (void) const |
Remove reference to object. More... | |
void | ReleaseReference (void) const |
Remove reference without deleting object. More... | |
virtual void | DoNotDeleteThisObject (void) |
Mark this object as not allocated in heap – do not delete this object. More... | |
virtual void | DoDeleteThisObject (void) |
Mark this object as allocated in heap – object can be deleted. More... | |
void * | operator new (size_t size) |
Define new operator for memory allocation. More... | |
void * | operator new[] (size_t size) |
Define new[] operator for 'array' memory allocation. More... | |
void | operator delete (void *ptr) |
Define delete operator for memory deallocation. More... | |
void | operator delete[] (void *ptr) |
Define delete[] operator for memory deallocation. More... | |
void * | operator new (size_t size, void *place) |
Define new operator. More... | |
void | operator delete (void *ptr, void *place) |
Define delete operator. More... | |
void * | operator new (size_t size, CObjectMemoryPool *place) |
Define new operator using memory pool. More... | |
void | operator delete (void *ptr, CObjectMemoryPool *place) |
Define delete operator. More... | |
![]() | |
CDebugDumpable (void) | |
virtual | ~CDebugDumpable (void) |
void | DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const |
void | DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const |
void | DumpToConsole (void) const |
Static Public Member Functions | |
static string | SelectionName (E_Choice index) |
Retrieve selection name (for diagnostic purposes). More... | |
![]() | |
static void | SetVerifyDataThread (ESerialVerifyData verify) |
static void | SetVerifyDataGlobal (ESerialVerifyData verify) |
static string | UnassignedString (void) |
static CStringUTF8 | UnassignedStringUTF8 (void) |
static char | UnassignedByte (void) |
![]() | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (void) |
Define method to throw null pointer exception. More... | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (const type_info &type) |
static EAllocFillMode | GetAllocFillMode (void) |
static void | SetAllocFillMode (EAllocFillMode mode) |
static void | SetAllocFillMode (const string &value) |
Set mode from configuration parameter value. More... | |
![]() | |
static void | EnableDebugDump (bool on) |
Private Types | |
typedef CSerialObject | Tparent |
Private Member Functions | |
C_Data (const C_Data &) | |
C_Data & | operator= (const C_Data &) |
void | DoSelect (E_Choice index, CObjectMemoryPool *pool=0) |
Private Attributes | |
E_Choice | m_choice |
union { | |
TInt CUser_field_Base::C_Data::m_Int | |
TReal CUser_field_Base::C_Data::m_Real | |
TBool CUser_field_Base::C_Data::m_Bool | |
NCBI_NS_NCBI::CUnionBuffer< TOs > CUser_field_Base::C_Data::m_Os | |
NCBI_NS_NCBI::CUnionBuffer< TStrs > CUser_field_Base::C_Data::m_Strs | |
NCBI_NS_NCBI::CUnionBuffer< TInts > CUser_field_Base::C_Data::m_Ints | |
NCBI_NS_NCBI::CUnionBuffer< TReals > CUser_field_Base::C_Data::m_Reals | |
NCBI_NS_NCBI::CUnionBuffer< TOss > CUser_field_Base::C_Data::m_Oss | |
NCBI_NS_NCBI::CUnionBuffer< TFields > CUser_field_Base::C_Data::m_Fields | |
NCBI_NS_NCBI::CUnionBuffer< TObjects > CUser_field_Base::C_Data::m_Objects | |
NCBI_NS_NCBI::CUnionBuffer< CStringUTF8 > CUser_field_Base::C_Data::m_string_utf8 | |
NCBI_NS_NCBI::CSerialObject * CUser_field_Base::C_Data::m_object | |
}; | |
Static Private Attributes | |
static const char *const | sm_SelectionNames [] |
Additional Inherited Members | |
![]() | |
static const char * | ms_UnassignedStr = "<*unassigned*>" |
static const char | ms_UnassignedByte = char(0xcd) |
![]() | |
static const TCount | eCounterBitsCanBeDeleted = 1 << 0 |
Define possible object states. More... | |
static const TCount | eCounterBitsInPlainHeap = 1 << 1 |
Heap signature was found. More... | |
static const TCount | eCounterBitsPlaceMask |
Mask for 'in heap' state flags. More... | |
static const int | eCounterStep = 1 << 2 |
Skip over the "in heap" bits. More... | |
static const TCount | eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2) |
Minimal value for valid objects (reference counter is zero) Must be a single bit value. More... | |
static const TCount | eCounterStateMask |
Valid object, and object in heap. More... | |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |