ldas-tools-framecpp 2.9.2
Classes | Public Types | Public Member Functions | Private Types | Private Attributes | Friends | List of all members
FrameCPP::Common::Dictionary Class Reference

Keep track of structures written to or read from stream. More...

#include <Dictionary.hh>

Classes

struct  node_type
 
struct  object_hash
 
struct  object_ptr_hash
 
struct  ptr_struct_hash
 
struct  streamref_hash
 

Public Types

typedef FrameSpec::Objectobject_ptr_type
 
typedef boost::shared_ptr< FrameSpec::Objectobject_type
 
typedef boost::shared_ptr< StreamRefInterfacestreamref_type
 
typedef std::pair< StreamRefInterface::class_type, StreamRefInterface::instance_typeptr_struct_key_type
 
typedef FrameSpec::Objectobject_ptr_type
 
typedef boost::shared_ptr< FrameSpec::Objectobject_type
 
typedef boost::shared_ptr< StreamRefInterfacestreamref_type
 
typedef std::pair< StreamRefInterface::class_type, StreamRefInterface::instance_typeptr_struct_key_type
 
typedef FrameSpec::Objectobject_ptr_type
 
typedef boost::shared_ptr< FrameSpec::Objectobject_type
 
typedef boost::shared_ptr< StreamRefInterfacestreamref_type
 
typedef std::pair< StreamRefInterface::class_type, StreamRefInterface::instance_typeptr_struct_key_type
 

Public Member Functions

 Dictionary ()
 
 ~Dictionary ()
 
void Clear ()
 
streamref_type Ref (const ptr_struct_key_type &Key) const
 
object_type Ref (streamref_type SR) const
 
streamref_type Ref (object_type Obj) const
 
void Ref (streamref_type SR, object_type Obj)
 
streamref_type RefCreate (object_type Obj, const OStream &Stream)
 Create a reference. More...
 
void Remove (const ptr_struct_key_type &Key)
 
void Remove (object_type Key)
 
void ResetInstanceCounts ()
 
void SetInstance (streamref_type StreamRef)
 
void Next (object_type Obj, object_type Next)
 
object_type Next (object_type Obj) const
 
object_type Next (const object_type::element_type *Obj) const
 
 Dictionary ()
 
 ~Dictionary ()
 
void Clear ()
 
streamref_type Ref (const ptr_struct_key_type &Key) const
 
object_type Ref (streamref_type SR) const
 
streamref_type Ref (object_type Obj) const
 
void Ref (streamref_type SR, object_type Obj)
 
streamref_type RefCreate (object_type Obj, const OStream &Stream)
 Create a reference. More...
 
void Remove (const ptr_struct_key_type &Key)
 
void Remove (object_type Key)
 
void ResetInstanceCounts ()
 
void SetInstance (streamref_type StreamRef)
 
void Next (object_type Obj, object_type Next)
 
object_type Next (object_type Obj) const
 
object_type Next (const object_type::element_type *Obj) const
 
 Dictionary ()
 
 ~Dictionary ()
 
void Clear ()
 
streamref_type Ref (const ptr_struct_key_type &Key) const
 
object_type Ref (streamref_type SR) const
 
streamref_type Ref (object_type Obj) const
 
void Ref (streamref_type SR, object_type Obj)
 
streamref_type RefCreate (object_type Obj, const OStream &Stream)
 Create a reference. More...
 
void Remove (const ptr_struct_key_type &Key)
 
void Remove (object_type Key)
 
void ResetInstanceCounts ()
 
void SetInstance (streamref_type StreamRef)
 
void Next (object_type Obj, object_type Next)
 
object_type Next (object_type Obj) const
 
object_type Next (const object_type::element_type *Obj) const
 

Private Types

typedef const streamref_type::element_type * const_streamref_type
 
typedef LDASTools::AL::unordered_map< object_type, streamref_type, object_hashstreamref_container_type
 
typedef LDASTools::AL::unordered_map< streamref_type, object_type, streamref_hashobject_container_type
 
typedef LDASTools::AL::unordered_map< FrameSpec::class_type, FrameSpec::instance_typeinstance_count_container_type
 
typedef LDASTools::AL::unordered_map< object_ptr_type, node_type, object_ptr_hashnext_container_type
 
typedef LDASTools::AL::unordered_map< ptr_struct_key_type, streamref_type, ptr_struct_hash, ptr_struct_hashstreamref_by_id_container_type
 
typedef const streamref_type::element_type * const_streamref_type
 
typedef LDASTools::AL::unordered_map< object_type, streamref_type, object_hashstreamref_container_type
 
typedef LDASTools::AL::unordered_map< streamref_type, object_type, streamref_hashobject_container_type
 
typedef LDASTools::AL::unordered_map< FrameSpec::class_type, FrameSpec::instance_typeinstance_count_container_type
 
typedef LDASTools::AL::unordered_map< object_ptr_type, node_type, object_ptr_hashnext_container_type
 
typedef LDASTools::AL::unordered_map< ptr_struct_key_type, streamref_type, ptr_struct_hash, ptr_struct_hashstreamref_by_id_container_type
 
typedef const streamref_type::element_type * const_streamref_type
 
typedef LDASTools::AL::unordered_map< object_type, streamref_type, object_hashstreamref_container_type
 
typedef LDASTools::AL::unordered_map< streamref_type, object_type, streamref_hashobject_container_type
 
typedef LDASTools::AL::unordered_map< FrameSpec::class_type, FrameSpec::instance_typeinstance_count_container_type
 
typedef LDASTools::AL::unordered_map< object_ptr_type, node_type, object_ptr_hashnext_container_type
 
typedef LDASTools::AL::unordered_map< ptr_struct_key_type, streamref_type, ptr_struct_hash, ptr_struct_hashstreamref_by_id_container_type
 

Private Attributes

const_streamref_type m_stream_ref
 
streamref_container_type m_streamref_container
 
object_container_type m_object_container
 
instance_count_container_type m_instance_count_container
 
next_container_type m_next_container
 
streamref_by_id_container_type m_streamref_by_id_container
 

Friends

class FrameStream
 

Detailed Description

Keep track of structures written to or read from stream.

Member Typedef Documentation

◆ const_streamref_type [1/3]

typedef const streamref_type::element_type* FrameCPP::Common::Dictionary::const_streamref_type
private

◆ const_streamref_type [2/3]

typedef const streamref_type::element_type* FrameCPP::Common::Dictionary::const_streamref_type
private

◆ const_streamref_type [3/3]

typedef const streamref_type::element_type* FrameCPP::Common::Dictionary::const_streamref_type
private

◆ instance_count_container_type [1/3]

◆ instance_count_container_type [2/3]

◆ instance_count_container_type [3/3]

◆ next_container_type [1/3]

◆ next_container_type [2/3]

◆ next_container_type [3/3]

◆ object_container_type [1/3]

◆ object_container_type [2/3]

◆ object_container_type [3/3]

◆ object_ptr_type [1/3]

◆ object_ptr_type [2/3]

◆ object_ptr_type [3/3]

◆ object_type [1/3]

◆ object_type [2/3]

◆ object_type [3/3]

◆ ptr_struct_key_type [1/3]

◆ ptr_struct_key_type [2/3]

◆ ptr_struct_key_type [3/3]

◆ streamref_by_id_container_type [1/3]

◆ streamref_by_id_container_type [2/3]

◆ streamref_by_id_container_type [3/3]

◆ streamref_container_type [1/3]

◆ streamref_container_type [2/3]

◆ streamref_container_type [3/3]

◆ streamref_type [1/3]

◆ streamref_type [2/3]

◆ streamref_type [3/3]

Constructor & Destructor Documentation

◆ Dictionary() [1/3]

FrameCPP::Common::Dictionary::Dictionary ( )

◆ ~Dictionary() [1/3]

FrameCPP::Common::Dictionary::~Dictionary ( )

◆ Dictionary() [2/3]

FrameCPP::Common::Dictionary::Dictionary ( )

◆ ~Dictionary() [2/3]

FrameCPP::Common::Dictionary::~Dictionary ( )

◆ Dictionary() [3/3]

FrameCPP::Common::Dictionary::Dictionary ( )

◆ ~Dictionary() [3/3]

FrameCPP::Common::Dictionary::~Dictionary ( )

Member Function Documentation

◆ Clear() [1/3]

void FrameCPP::Common::Dictionary::Clear ( )
inline

◆ Clear() [2/3]

void FrameCPP::Common::Dictionary::Clear ( )

◆ Clear() [3/3]

void FrameCPP::Common::Dictionary::Clear ( )

◆ Next() [1/9]

Dictionary::object_type FrameCPP::Common::Dictionary::Next ( const object_type::element_type *  Obj) const
inline

◆ Next() [2/9]

object_type FrameCPP::Common::Dictionary::Next ( const object_type::element_type *  Obj) const

◆ Next() [3/9]

object_type FrameCPP::Common::Dictionary::Next ( const object_type::element_type *  Obj) const

◆ Next() [4/9]

Dictionary::object_type FrameCPP::Common::Dictionary::Next ( object_type  Obj) const
inline

◆ Next() [5/9]

object_type FrameCPP::Common::Dictionary::Next ( object_type  Obj) const

◆ Next() [6/9]

object_type FrameCPP::Common::Dictionary::Next ( object_type  Obj) const

◆ Next() [7/9]

void FrameCPP::Common::Dictionary::Next ( object_type  Obj,
object_type  Next 
)
inline

◆ Next() [8/9]

void FrameCPP::Common::Dictionary::Next ( object_type  Obj,
object_type  Next 
)

◆ Next() [9/9]

void FrameCPP::Common::Dictionary::Next ( object_type  Obj,
object_type  Next 
)

◆ Ref() [1/12]

Dictionary::streamref_type FrameCPP::Common::Dictionary::Ref ( const ptr_struct_key_type Key) const
inline

◆ Ref() [2/12]

streamref_type FrameCPP::Common::Dictionary::Ref ( const ptr_struct_key_type Key) const

◆ Ref() [3/12]

streamref_type FrameCPP::Common::Dictionary::Ref ( const ptr_struct_key_type Key) const

◆ Ref() [4/12]

Dictionary::streamref_type FrameCPP::Common::Dictionary::Ref ( object_type  Obj) const
inline

◆ Ref() [5/12]

streamref_type FrameCPP::Common::Dictionary::Ref ( object_type  Obj) const

◆ Ref() [6/12]

streamref_type FrameCPP::Common::Dictionary::Ref ( object_type  Obj) const

◆ Ref() [7/12]

Dictionary::object_type FrameCPP::Common::Dictionary::Ref ( streamref_type  SR) const
inline

◆ Ref() [8/12]

object_type FrameCPP::Common::Dictionary::Ref ( streamref_type  SR) const

◆ Ref() [9/12]

object_type FrameCPP::Common::Dictionary::Ref ( streamref_type  SR) const

◆ Ref() [10/12]

void FrameCPP::Common::Dictionary::Ref ( streamref_type  SR,
object_type  Obj 
)
inline

◆ Ref() [11/12]

void FrameCPP::Common::Dictionary::Ref ( streamref_type  SR,
object_type  Obj 
)

◆ Ref() [12/12]

void FrameCPP::Common::Dictionary::Ref ( streamref_type  SR,
object_type  Obj 
)

◆ RefCreate() [1/3]

Dictionary::streamref_type FrameCPP::Common::Dictionary::RefCreate ( object_type  Obj,
const OStream Stream 
)
inline

Create a reference.


Parameters
[in]ObjObject to be referenced.
[in]StreamStream to receive the reference.
Returns

A reference to Obj appropriate for the Stream.

This method is used for creating a reference that would be appropriate for writing to a stream.

◆ RefCreate() [2/3]

streamref_type FrameCPP::Common::Dictionary::RefCreate ( object_type  Obj,
const OStream Stream 
)

Create a reference.


Parameters
[in]ObjObject to be referenced.
[in]StreamStream to receive the reference.
Returns

A reference to Obj appropriate for the Stream.

◆ RefCreate() [3/3]

streamref_type FrameCPP::Common::Dictionary::RefCreate ( object_type  Obj,
const OStream Stream 
)

Create a reference.


Parameters
[in]ObjObject to be referenced.
[in]StreamStream to receive the reference.
Returns

A reference to Obj appropriate for the Stream.

◆ Remove() [1/6]

void FrameCPP::Common::Dictionary::Remove ( const ptr_struct_key_type Key)
inline

◆ Remove() [2/6]

void FrameCPP::Common::Dictionary::Remove ( const ptr_struct_key_type Key)

◆ Remove() [3/6]

void FrameCPP::Common::Dictionary::Remove ( const ptr_struct_key_type Key)

◆ Remove() [4/6]

void FrameCPP::Common::Dictionary::Remove ( object_type  Key)
inline

◆ Remove() [5/6]

void FrameCPP::Common::Dictionary::Remove ( object_type  Key)

◆ Remove() [6/6]

void FrameCPP::Common::Dictionary::Remove ( object_type  Key)

◆ ResetInstanceCounts() [1/3]

void FrameCPP::Common::Dictionary::ResetInstanceCounts ( )
inline

◆ ResetInstanceCounts() [2/3]

void FrameCPP::Common::Dictionary::ResetInstanceCounts ( )

◆ ResetInstanceCounts() [3/3]

void FrameCPP::Common::Dictionary::ResetInstanceCounts ( )

◆ SetInstance() [1/3]

void FrameCPP::Common::Dictionary::SetInstance ( streamref_type  StreamRef)

◆ SetInstance() [2/3]

void FrameCPP::Common::Dictionary::SetInstance ( streamref_type  StreamRef)

◆ SetInstance() [3/3]

void FrameCPP::Common::Dictionary::SetInstance ( streamref_type  StreamRef)

Friends And Related Function Documentation

◆ FrameStream

FrameStream
friend

Member Data Documentation

◆ m_instance_count_container

instance_count_container_type FrameCPP::Common::Dictionary::m_instance_count_container
private

◆ m_next_container

next_container_type FrameCPP::Common::Dictionary::m_next_container
private

◆ m_object_container

object_container_type FrameCPP::Common::Dictionary::m_object_container
private

◆ m_stream_ref

const_streamref_type FrameCPP::Common::Dictionary::m_stream_ref
private

◆ m_streamref_by_id_container

streamref_by_id_container_type FrameCPP::Common::Dictionary::m_streamref_by_id_container
private

◆ m_streamref_container

streamref_container_type FrameCPP::Common::Dictionary::m_streamref_container
private

The documentation for this class was generated from the following files: