src/objects/general/uoconv.cpp File Reference

#include <ncbi_pch.hpp>
#include <objects/general/uoconv.hpp>
#include <objects/general/Object_id.hpp>
#include <objects/general/User_field.hpp>
#include <objects/general/User_object.hpp>
#include <objects/misc/error_codes.hpp>
#include <serial/objectiter.hpp>
#include <util/bitset/bmserial.h>

Include dependency graph for uoconv.cpp:

Go to the source code of this file.

Defines

#define NCBI_USE_ERRCODE_X   Objects_UOConv

Typedefs

typedef CUser_field::TData TUFData
typedef TUFData::TOs TUFDOs

Functions

static CRef< CUser_fields_PackAsUserField (CConstObjectInfo obj, const string *label=0)
static void s_SetOSFromBS (TUFDOs &os, CBitString &bs)
static void s_SetBSFromOS (CBitString &bs, const TUFDOs &os)
static void s_SetFieldsFromAnyContent (CUser_field &parent, const CAnyContentObject &obj)
static void s_SetAnyContentFromFields (CAnyContentObject &obj, const TUFData::TFields &fields)
static void s_SetPrimitiveData (CUser_field &field, CConstObjectInfo obj)
static CUser_field::TNum s_SetContainerData (TUFData &data, CConstObjectInfo obj)
CRef< CUser_objectPackAsUserObject (CConstObjectInfo obj)
static void s_UnpackUserField (const CUser_field &uo, CObjectInfo obj)
static void s_UnpackPrimitiveField (const TUFData &data, CObjectInfo obj)
static void s_UnpackContainerField (const TUFData &data, CObjectInfo obj)
void UnpackUserObject (const CUser_object &uo, CObjectInfo obj)
CObjectInfo UnpackUserObject (const CUser_object &uo, const CTypeInfo *ti)


Define Documentation

#define NCBI_USE_ERRCODE_X   Objects_UOConv
 

Definition at line 51 of file uoconv.cpp.


Typedef Documentation

typedef CUser_field::TData TUFData
 

Definition at line 56 of file uoconv.cpp.

typedef TUFData::TOs TUFDOs
 

Definition at line 57 of file uoconv.cpp.


Function Documentation

CRef<CUser_object> PackAsUserObject CConstObjectInfo  obj  ) 
 

Definition at line 402 of file uoconv.cpp.

References CTypeInfo::GetModuleName(), CTypeInfo::GetName(), CObjectTypeInfo::GetTypeInfo(), and s_PackAsUserField().

CRef< CUser_field > s_PackAsUserField CConstObjectInfo  obj,
const string *  label = 0
[static]
 

Definition at line 342 of file uoconv.cpp.

References CConstObjectInfo::BeginMembers(), eTypeFamilyClass, eTypeFamilyContainer, eTypeFamilyPrimitive, CObjectTypeInfo::GetClassTypeInfo(), CClassTypeInfoBase::GetItems(), CObjectTypeInfo::GetTypeFamily(), CItemsInfo::LastIndex(), s_SetContainerData(), and s_SetPrimitiveData().

Referenced by PackAsUserObject().

static void s_SetAnyContentFromFields CAnyContentObject obj,
const TUFData::TFields &  fields
[static]
 

Definition at line 116 of file uoconv.cpp.

References CAnyContentObject::AddAttribute(), ITERATE, NCBI_THROW, NPOS, CAnyContentObject::SetName(), CAnyContentObject::SetNamespaceName(), CAnyContentObject::SetNamespacePrefix(), and CAnyContentObject::SetValue().

static void s_SetBSFromOS CBitString bs,
const TUFDOs os
[static]
 

Definition at line 82 of file uoconv.cpp.

References CHAR_BIT, and bm::bvector< Alloc, MS >::resize().

static CUser_field::TNum s_SetContainerData TUFData data,
CConstObjectInfo  obj
[static]
 

Definition at line 208 of file uoconv.cpp.

References ePrimitiveValueAny, ePrimitiveValueBitString, ePrimitiveValueBool, ePrimitiveValueChar, ePrimitiveValueEnum, ePrimitiveValueInteger, ePrimitiveValueOctetString, ePrimitiveValueOther, ePrimitiveValueReal, ePrimitiveValueSpecial, ePrimitiveValueString, ERR_POST_X, eTypeFamilyPrimitive, CObjectTypeInfo::GetContainerTypeInfo(), CContainerTypeInfo::GetElementCount(), CObjectTypeInfo::GetElementType(), CConstObjectInfo::GetObjectPtr(), CObjectTypeInfo::GetPrimitiveValueType(), and CObjectTypeInfo::GetTypeFamily().

Referenced by s_PackAsUserField().

static void s_SetFieldsFromAnyContent CUser_field parent,
const CAnyContentObject obj
[static]
 

Definition at line 100 of file uoconv.cpp.

References CUser_field::AddField(), CAnyContentObject::GetAttributes(), CAnyContentObject::GetName(), CAnyContentObject::GetNamespaceName(), CAnyContentObject::GetNamespacePrefix(), CAnyContentObject::GetValue(), ITERATE, and CUser_field_Base::SetNum().

static void s_SetOSFromBS TUFDOs os,
CBitString bs
[static]
 

Definition at line 62 of file uoconv.cpp.

References CHAR_BIT.

static void s_SetPrimitiveData CUser_field field,
CConstObjectInfo  obj
[static]
 

Definition at line 141 of file uoconv.cpp.

References ePrimitiveValueBool, ePrimitiveValueChar, ePrimitiveValueInteger, ePrimitiveValueSpecial, CConstObjectInfo::GetPrimitiveValueBool(), CConstObjectInfo::GetPrimitiveValueChar(), CConstObjectInfo::GetPrimitiveValueInt(), CObjectTypeInfo::GetPrimitiveValueType(), CObjectTypeInfo::IsPrimitiveValueSigned(), and CUser_field_Base::SetData().

Referenced by s_PackAsUserField().

static void s_UnpackContainerField const TUFData data,
CObjectInfo  obj
[static]
 

Definition at line 482 of file uoconv.cpp.

References eTypeFamilyPrimitive, CObjectTypeInfo::GetContainerTypeInfo(), CObjectTypeInfo::GetElementType(), CObjectInfo::GetObjectPtr(), CObjectTypeInfo::GetTypeFamily(), CObjectTypeInfo::GetTypeInfo(), and NCBI_THROW.

Referenced by s_UnpackUserField().

static void s_UnpackPrimitiveField const TUFData data,
CObjectInfo  obj
[static]
 

Definition at line 414 of file uoconv.cpp.

References ePrimitiveValueBool, ePrimitiveValueChar, ePrimitiveValueInteger, CObjectTypeInfo::GetPrimitiveValueType(), CObjectTypeInfo::IsPrimitiveValueSigned(), CObjectInfo::SetPrimitiveValueBool(), CObjectInfo::SetPrimitiveValueChar(), and CObjectInfo::SetPrimitiveValueInt().

Referenced by s_UnpackUserField().

static void s_UnpackUserField const CUser_field uo,
CObjectInfo  obj
[static]
 

Definition at line 631 of file uoconv.cpp.

References _ASSERT, eTypeFamilyClass, eTypeFamilyContainer, eTypeFamilyPrimitive, CObjectInfo::FindClassMember(), CUser_field_Base::GetData(), CObjectInfo::GetObjectPtr(), CObjectTypeInfo::GetTypeFamily(), CObjectInfoMI::IsSet(), ITERATE, s_UnpackContainerField(), s_UnpackPrimitiveField(), and NStr::ToLower().

Referenced by UnpackUserObject().

CObjectInfo UnpackUserObject const CUser_object uo,
const CTypeInfo ti
 

Definition at line 702 of file uoconv.cpp.

References _ASSERT, and UnpackUserObject().

void UnpackUserObject const CUser_object uo,
CObjectInfo  obj
 

Definition at line 696 of file uoconv.cpp.

References _ASSERT, CUser_object_Base::GetData(), CObjectInfo::GetObjectPtr(), and s_UnpackUserField().


Generated on Mon Dec 7 08:36:15 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Mon Dec 07 16:21:58 2009 by modify_doxy.py rev. 173732