liblcf
Field< S > Struct Template Referenceabstract

#include <reader_struct.h>

+ Inheritance diagram for Field< S >:
+ Collaboration diagram for Field< S >:

Public Types

typedef S struct_type
 

Public Member Functions

virtual void ReadLcf (S &obj, LcfReader &stream, uint32_t length) const =0
 
virtual void WriteLcf (const S &obj, LcfWriter &stream) const =0
 
virtual int LcfSize (const S &obj, LcfWriter &stream) const =0
 
virtual bool IsDefault (const S &obj, const S &ref) const =0
 
virtual void WriteXml (const S &obj, XmlWriter &stream) const =0
 
virtual void BeginXml (S &obj, XmlReader &stream) const =0
 
virtual void ParseXml (S &obj, const std::string &data) const =0
 
bool isPresentIfDefault (bool db_is2k3) const
 
 Field (int id, const char *name, bool present_if_default, bool is2k3)
 

Public Attributes

const char *const name
 
int id
 
bool present_if_default
 
bool is2k3
 

Detailed Description

template<class S>
struct Field< S >

Field abstract base class template.

Definition at line 315 of file reader_struct.h.

Member Typedef Documentation

◆ struct_type

template<class S >
typedef S Field< S >::struct_type

Definition at line 316 of file reader_struct.h.

Constructor & Destructor Documentation

◆ Field()

template<class S >
Field< S >::Field ( int  id,
const char *  name,
bool  present_if_default,
bool  is2k3 
)
inline

Definition at line 340 of file reader_struct.h.

Member Function Documentation

◆ BeginXml()

template<class S >
virtual void Field< S >::BeginXml ( S &  obj,
XmlReader stream 
) const
pure virtual

◆ IsDefault()

template<class S >
virtual bool Field< S >::IsDefault ( const S &  obj,
const S &  ref 
) const
pure virtual

Implemented in SizeField< S, T >, DatabaseVersionField< S, T >, TypedField< S, T >, and EmptyField< S >.

Referenced by Struct< S >::LcfSize(), and Struct< S >::WriteLcf().

+ Here is the caller graph for this function:

◆ isPresentIfDefault()

template<class S >
bool Field< S >::isPresentIfDefault ( bool  db_is2k3) const
inline

Definition at line 331 of file reader_struct.h.

References Field< S >::present_if_default.

Referenced by Struct< S >::LcfSize(), and Struct< S >::WriteLcf().

+ Here is the caller graph for this function:

◆ LcfSize()

template<class S >
virtual int Field< S >::LcfSize ( const S &  obj,
LcfWriter stream 
) const
pure virtual

Implemented in SizeField< S, T >, DatabaseVersionField< S, T >, TypedField< S, T >, CountField< S, T >, and EmptyField< S >.

Referenced by Struct< S >::LcfSize(), and Struct< S >::WriteLcf().

+ Here is the caller graph for this function:

◆ ParseXml()

template<class S >
virtual void Field< S >::ParseXml ( S &  obj,
const std::string &  data 
) const
pure virtual

◆ ReadLcf()

template<class S >
virtual void Field< S >::ReadLcf ( S &  obj,
LcfReader stream,
uint32_t  length 
) const
pure virtual

◆ WriteLcf()

template<class S >
virtual void Field< S >::WriteLcf ( const S &  obj,
LcfWriter stream 
) const
pure virtual

Implemented in CountField< S, T >, SizeField< S, T >, TypedField< S, T >, and EmptyField< S >.

Referenced by Struct< S >::WriteLcf().

+ Here is the caller graph for this function:

◆ WriteXml()

template<class S >
virtual void Field< S >::WriteXml ( const S &  obj,
XmlWriter stream 
) const
pure virtual

Implemented in TypedField< S, T >, SizeField< S, T >, and EmptyField< S >.

Referenced by Struct< S >::WriteXml().

+ Here is the caller graph for this function:

Member Data Documentation

◆ id

template<class S >
int Field< S >::id

Definition at line 319 of file reader_struct.h.

Referenced by Struct< S >::LcfSize(), and Struct< S >::WriteLcf().

◆ is2k3

template<class S >
bool Field< S >::is2k3

Definition at line 321 of file reader_struct.h.

Referenced by Struct< S >::LcfSize(), and Struct< S >::WriteLcf().

◆ name

template<class S >
const char* const Field< S >::name

Definition at line 318 of file reader_struct.h.

Referenced by TypedField< S, T >::WriteXml().

◆ present_if_default

template<class S >
bool Field< S >::present_if_default

Definition at line 320 of file reader_struct.h.

Referenced by Field< S >::isPresentIfDefault().


The documentation for this struct was generated from the following file: