src/serial/serialobject.cpp File Reference

#include <ncbi_pch.hpp>
#include <corelib/ncbi_safe_static.hpp>
#include <corelib/ncbimtx.hpp>
#include <corelib/ncbithr.hpp>
#include <serial/serialbase.hpp>
#include <serial/typeinfo.hpp>
#include <serial/objostr.hpp>
#include <serial/objistr.hpp>
#include <serial/objostrxml.hpp>
#include <serial/objistrxml.hpp>
#include <serial/impl/classinfob.hpp>
#include <serial/error_codes.hpp>

Include dependency graph for serialobject.cpp:

Go to the source code of this file.

Defines

#define NCBI_USE_ERRCODE_X   Serial_Core
#define eFmt_AsnText   (1l << 0)
#define eFmt_AsnBinary   (1l << 1)
#define eFmt_Xml   (1l << 2)
#define eFmt_Json   (1l << 3)
#define eFmt_All   (eFmt_AsnText | eFmt_AsnBinary | eFmt_Xml | eFmt_Json)
#define eVerify_No   (1l << 8)
#define eVerify_Yes   (1l << 9)
#define eVerify_DefValue   (1l << 10)
#define eVerify_All   (eVerify_No | eVerify_Yes | eVerify_DefValue)
#define eEncoding_All   (255l << 16)

Functions

static bool IsSameTypeInfo (const CSerialObject &obj1, const CSerialObject &obj2)
static long & s_SerFlags (CNcbiIos &io)
static ESerialDataFormat s_FlagsToFormat (CNcbiIos &io)
static long s_FormatToFlags (ESerialDataFormat fmt)
static ESerialVerifyData s_FlagsToVerify (CNcbiIos &io)
static long s_VerifyToFlags (ESerialVerifyData fmt)
static EEncoding s_FlagsToEncoding (CNcbiIos &io)
static long s_EncodingToFlags (EEncoding fmt)
CNcbiIosMSerial_AsnText (CNcbiIos &io)
CNcbiIosMSerial_AsnBinary (CNcbiIos &io)
CNcbiIosMSerial_Xml (CNcbiIos &io)
CNcbiIosMSerial_Json (CNcbiIos &io)
CNcbiIosMSerial_VerifyDefault (CNcbiIos &io)
CNcbiIosMSerial_VerifyNo (CNcbiIos &io)
CNcbiIosMSerial_VerifyYes (CNcbiIos &io)
CNcbiIosMSerial_VerifyDefValue (CNcbiIos &io)
CNcbiOstreamoperator<< (CNcbiOstream &os, const CSerialObject &obj)
CNcbiIstreamoperator>> (CNcbiIstream &is, CSerialObject &obj)
CNcbiOstreamoperator<< (CNcbiOstream &os, const CConstObjectInfo &obj)
CNcbiIstreamoperator>> (CNcbiIstream &is, const CObjectInfo &obj)

Variables

static CStaticTls< int > s_VerifyTLS


Define Documentation

#define eEncoding_All   (255l << 16)
 

Definition at line 403 of file serialobject.cpp.

Referenced by s_FlagsToEncoding().

#define eFmt_All   (eFmt_AsnText | eFmt_AsnBinary | eFmt_Xml | eFmt_Json)
 

Definition at line 398 of file serialobject.cpp.

Referenced by MSerial_AsnBinary(), MSerial_AsnText(), MSerial_Json(), MSerial_Xml(), and s_FlagsToFormat().

#define eFmt_AsnBinary   (1l << 1)
 

Definition at line 395 of file serialobject.cpp.

Referenced by MSerial_AsnBinary(), s_FlagsToFormat(), and s_FormatToFlags().

#define eFmt_AsnText   (1l << 0)
 

Definition at line 394 of file serialobject.cpp.

Referenced by MSerial_AsnText(), s_FlagsToFormat(), and s_FormatToFlags().

#define eFmt_Json   (1l << 3)
 

Definition at line 397 of file serialobject.cpp.

Referenced by MSerial_Json(), s_FlagsToFormat(), and s_FormatToFlags().

#define eFmt_Xml   (1l << 2)
 

Definition at line 396 of file serialobject.cpp.

Referenced by MSerial_Xml(), s_FlagsToFormat(), and s_FormatToFlags().

#define eVerify_All   (eVerify_No | eVerify_Yes | eVerify_DefValue)
 

Definition at line 402 of file serialobject.cpp.

Referenced by MSerial_VerifyDefault(), MSerial_VerifyDefValue(), MSerial_VerifyNo(), MSerial_VerifyYes(), and s_FlagsToVerify().

#define eVerify_DefValue   (1l << 10)
 

Definition at line 401 of file serialobject.cpp.

Referenced by MSerial_VerifyDefValue(), s_FlagsToVerify(), and s_VerifyToFlags().

#define eVerify_No   (1l << 8)
 

Definition at line 399 of file serialobject.cpp.

Referenced by MSerial_VerifyNo(), s_FlagsToVerify(), and s_VerifyToFlags().

#define eVerify_Yes   (1l << 9)
 

Definition at line 400 of file serialobject.cpp.

Referenced by MSerial_VerifyYes(), s_FlagsToVerify(), and s_VerifyToFlags().

#define NCBI_USE_ERRCODE_X   Serial_Core
 

Definition at line 49 of file serialobject.cpp.


Function Documentation

static bool IsSameTypeInfo const CSerialObject obj1,
const CSerialObject obj2
[static]
 

Definition at line 54 of file serialobject.cpp.

References eTypeFamilyPointer, CSerialObject::GetThisTypeInfo(), and CTypeInfo::GetTypeFamily().

Referenced by CSerialObject::Assign(), and CSerialObject::Equals().

static long s_EncodingToFlags EEncoding  fmt  )  [static]
 

Definition at line 485 of file serialobject.cpp.

References eEncoding_Ascii, eEncoding_ISO8859_1, eEncoding_UTF8, and eEncoding_Windows_1252.

static EEncoding s_FlagsToEncoding CNcbiIos io  )  [static]
 

Definition at line 472 of file serialobject.cpp.

References eEncoding_All, eEncoding_Ascii, eEncoding_ISO8859_1, eEncoding_Unknown, eEncoding_UTF8, eEncoding_Windows_1252, and s_SerFlags().

Referenced by operator<<(), and operator>>().

static ESerialDataFormat s_FlagsToFormat CNcbiIos io  )  [static]
 

Definition at line 424 of file serialobject.cpp.

References eFmt_All, eFmt_AsnBinary, eFmt_AsnText, eFmt_Json, eFmt_Xml, eSerial_AsnBinary, eSerial_AsnText, eSerial_Json, eSerial_None, eSerial_Xml, and s_SerFlags().

Referenced by operator<<(), and operator>>().

static ESerialVerifyData s_FlagsToVerify CNcbiIos io  )  [static]
 

Definition at line 447 of file serialobject.cpp.

References eSerialVerifyData_Default, eSerialVerifyData_DefValue, eSerialVerifyData_No, eSerialVerifyData_Yes, eVerify_All, eVerify_DefValue, eVerify_No, eVerify_Yes, and s_SerFlags().

Referenced by operator<<(), and operator>>().

static long s_FormatToFlags ESerialDataFormat  fmt  )  [static]
 

Definition at line 435 of file serialobject.cpp.

References eFmt_AsnBinary, eFmt_AsnText, eFmt_Json, eFmt_Xml, eSerial_AsnBinary, eSerial_AsnText, eSerial_Json, and eSerial_Xml.

static long& s_SerFlags CNcbiIos io  )  [static]
 

Definition at line 406 of file serialobject.cpp.

References DEFINE_STATIC_FAST_MUTEX.

Referenced by MSerial_AsnBinary(), MSerial_AsnText(), MSerial_Json(), MSerial_VerifyDefault(), MSerial_VerifyDefValue(), MSerial_VerifyNo(), MSerial_VerifyYes(), MSerial_Xml(), s_FlagsToEncoding(), s_FlagsToFormat(), s_FlagsToVerify(), and MSerial_Flags::SetFlags().

static long s_VerifyToFlags ESerialVerifyData  fmt  )  [static]
 

Definition at line 458 of file serialobject.cpp.

References eSerialVerifyData_Always, eSerialVerifyData_DefValue, eSerialVerifyData_DefValueAlways, eSerialVerifyData_Never, eSerialVerifyData_No, eSerialVerifyData_Yes, eVerify_DefValue, eVerify_No, and eVerify_Yes.


Variable Documentation

CStaticTls<int> s_VerifyTLS [static]
 

Definition at line 135 of file serialobject.cpp.


Generated on Wed Dec 9 07:48:32 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Wed Dec 09 08:18:40 2009 by modify_doxy.py rev. 173732