1 #ifndef OBJOSTRASNB__HPP
2 #define OBJOSTRASNB__HPP
120 void WriteLongLength(
size_t length);
125 m_CStyleBigInt =
set;
129 return m_CStyleBigInt;
133 void WriteByte(
Uint1 byte);
134 template<
typename T>
void WriteBytesOf(
const T&
value,
size_t count);
136 void WriteShortTag(ETagClass tag_class,
137 ETagConstructed tag_constructed,
138 ETagValue tag_value);
139 void WriteSysTag(ETagValue
tag);
140 static TByte GetUTF8StringTag(
void);
141 static TByte MakeUTF8StringTag(
void);
143 void WriteTag(ETagClass tag_class,
144 ETagConstructed tag_constructed,
146 void WriteIndefiniteLength(
void);
147 void WriteShortLength(
size_t length);
148 void WriteLength(
size_t length);
149 void WriteEndOfContent(
void);
160 void WriteDouble2(
double data,
unsigned digits);
169 bool checkVisible =
false);
177 #ifdef VIRTUAL_MID_LEVEL_IO
210 virtual void EndClass(
void)
override;
222 const char* bytes,
size_t length)
override;
226 const char*
chars,
size_t length)
override;
238 #if CHECK_OUTSTREAM_INTEGRITY
239 Int8 m_CurrentPosition;
248 ETagState m_CurrentTagState;
249 Int8 m_CurrentTagPosition;
250 Uint1 m_CurrentTagCode;
251 size_t m_CurrentTagLengthSize;
252 size_t m_CurrentTagLength;
253 Int8 m_CurrentTagLimit;
254 stack<Int8> m_Limits;
258 void SetTagLength(
size_t length);
CNcbiOstream & WriteContainer(CNcbiOstream &os, const TCont &cont)
Write a container to a stream.
Serializable object that stores any combination of parsable data.
CObjectIStreamAsnBinary –.
CObjectOStreamAsnBinary –.
CTypeInfo class contains all information about C++ types (both basic and classes): members and layout...
Include a standard set of the NCBI C++ Toolkit most basic headers.
std::ofstream out("events_result.xml")
main entry point for tests
static const char * str(char *buf, int n)
#define NCBI_DEPRECATED_CTOR(decl)
Macro used to mark a constructor as deprecated.
EFixNonPrint
How to process non-printing character in the ASN VisibleString.
const void * TConstObjectPtr
@ eStringTypeVisible
VisibleString (in ASN.1 sense)
virtual void EndClassMember(void)
virtual void BeginClass(const CClassTypeInfo *classInfo)=0
void WriteClassMember(const CConstObjectInfoMI &member)
virtual void BeginChoice(const CChoiceTypeInfo *choiceType)
virtual void WriteUint8(Uint8 data)=0
virtual void BeginBytes(const ByteBlock &block)
virtual void CopyString(CObjectIStream &in, EStringType type=eStringTypeVisible)=0
virtual void WriteOther(TConstObjectPtr object, TTypeInfo typeInfo)
virtual void WriteInt8(Int8 data)=0
virtual void EndClass(void)
virtual void WriteString(const string &str, EStringType type=eStringTypeVisible)=0
virtual void WriteBitString(const CBitString &obj)=0
virtual void WriteNullPointer(void)=0
virtual void WriteChar(char data)=0
virtual void CopyAnyContentObject(CObjectIStream &in)=0
virtual void CopyBitString(CObjectIStream &in)=0
virtual void WriteStringStore(const string &data)=0
virtual void WriteOtherEnd(TTypeInfo typeInfo)
virtual void WriteInt4(Int4 data)=0
virtual void WriteUint4(Uint4 data)=0
virtual void WriteCString(const char *str)=0
virtual void WriteObjectReference(TObjectIndex index)=0
virtual void BeginChoiceVariant(const CChoiceTypeInfo *choiceType, const CMemberId &id)=0
virtual void WriteChars(const CharBlock &block, const char *chars, size_t length)=0
MLIOVIR void CopyNamedType(TTypeInfo namedTypeInfo, TTypeInfo typeInfo, CObjectStreamCopier &copier)
MLIOVIR void WriteClass(const CClassTypeInfo *objectType, TConstObjectPtr objectPtr)
virtual void BeginContainer(const CContainerTypeInfo *containerType) override
virtual void CopyEnum(const CEnumeratedTypeValues &values, CObjectIStream &in)=0
virtual void EndContainer(void) override
virtual void WriteBytes(const ByteBlock &block, const char *bytes, size_t length)=0
MLIOVIR void CopyClassRandom(const CClassTypeInfo *objectType, CObjectStreamCopier &copier)
bool GetCStyleBigInt(void) const
virtual void CopyStringStore(CObjectIStream &in)=0
virtual void WriteFloat(float data)
virtual void EndChoice(void)
virtual void WriteDouble(double data)=0
void SetCStyleBigInt(bool set=true)
virtual void BeginChars(const CharBlock &block)
virtual void EndNamedType(void) override
virtual void WriteNull(void)=0
virtual void BeginNamedType(TTypeInfo namedTypeInfo) override
MLIOVIR void WriteNamedType(TTypeInfo namedTypeInfo, TTypeInfo typeInfo, TConstObjectPtr object)
virtual void WriteAnyContentObject(const CAnyContentObject &obj)=0
virtual void BeginClassMember(const CMemberId &id)=0
virtual void WriteOtherBegin(TTypeInfo typeInfo)=0
virtual void WriteBool(bool data)=0
virtual void EndChoiceVariant(void)
virtual void WriteEnum(const CEnumeratedTypeValues &values, TEnumValueType value)=0
MLIOVIR void CopyClassSequential(const CClassTypeInfo *objectType, CObjectStreamCopier &copier)
uint8_t Uint1
1-byte (8-bit) unsigned integer
int32_t Int4
4-byte (32-bit) signed integer
uint32_t Uint4
4-byte (32-bit) unsigned integer
int64_t Int8
8-byte (64-bit) signed integer
uint64_t Uint8
8-byte (64-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
enum ENcbiOwnership EOwnership
Ownership relations between objects.
#define NCBI_XSERIAL_EXPORT
const struct ncbi::grid::netcache::search::fields::SIZE size
const GenericPointer< typename T::ValueType > T2 value
static const BitmapCharRec *const chars[]
std::istream & in(std::istream &in_, double &x_)
void CopyContainer(const C1 &src, C2 &dst)