ldas-tools-framecpp 3.0.4
 
Loading...
Searching...
No Matches
FrameSpec::ObjectInterface Class Referenceabstract

#include <FrameSpec.hh>

Inheritance diagram for FrameSpec::ObjectInterface:

Public Types

typedef FrameSpec::version_type frame_spec_version_type
 
typedef FrameSpec::version_type frame_spec_version_type
 
typedef boost::shared_ptr< Objectobject_type
 
typedef boost::shared_ptr< Objectobject_type
 
typedef std::unique_ptr< Objectunique_object_type
 
typedef std::unique_ptr< Objectunique_object_type
 
typedef object_type demote_arg_type
 
typedef object_type demote_arg_type
 
typedef object_type demote_ret_type
 
typedef object_type demote_ret_type
 
typedef stream_base_type demote_stream_type
 
typedef stream_base_type demote_stream_type
 
typedef object_type promote_arg_type
 
typedef object_type promote_arg_type
 
typedef object_type promote_ret_type
 
typedef object_type promote_ret_type
 
typedef stream_base_type promote_stream_type
 
typedef stream_base_type promote_stream_type
 

Public Member Functions

virtual ~ObjectInterface ()
 Destructor.
 
virtual ~ObjectInterface ()
 Destructor.
 
virtual streamsize_type Bytes (const stream_base_type &Stream) const=0
 Return the number of bytes for this object.
 
virtual streamsize_type Bytes (const stream_base_type &Stream) const=0
 Return the number of bytes for this object.
 
virtual ObjectCreate () const
 constructor - virtual
 
virtual ObjectCreate (istream_type &Stream) const=0
 constructor - virtual
 
virtual ObjectCreate (std::istream &Buffer) const
 constructor - virtual
 
virtual ObjectCreate () const
 constructor - virtual
 
virtual ObjectCreate (istream_type &Stream) const=0
 constructor - virtual
 
virtual ObjectCreate (std::istream &Buffer) const
 constructor - virtual
 
virtual bool operator== (const Object &Obj) const=0
 comparison operator
 
virtual bool operator== (const Object &Obj) const=0
 comparison operator
 
virtual ObjectClone () const
 constructor - virtual copy constructor
 
virtual ObjectClone () const
 constructor - virtual copy constructor
 
virtual const DescriptionGetDescription () const=0
 Get FrSH/FrSE description of object.
 
virtual const DescriptionGetDescription (ostream_type &Stream) const=0
 
virtual const DescriptionGetDescription () const=0
 Get FrSH/FrSE description of object.
 
virtual const DescriptionGetDescription (ostream_type &Stream) const=0
 
virtual const char * ObjectStructName () const=0
 Retrieve the class name of the object.
 
virtual const char * ObjectStructName () const=0
 Retrieve the class name of the object.
 
template<typename PreviousType, typename CurrentType>
FrameSpec::ObjectInterface::promote_ret_type PromoteObject (FrameSpec::ObjectInterface::frame_spec_version_type Target, FrameSpec::ObjectInterface::frame_spec_version_type Source, FrameSpec::ObjectInterface::promote_arg_type Obj, promote_stream_type *Stream)
 
virtual void VerifyObject (Verify &Verifier, IFrameStream &Stream) const
 Verify an object.
 
virtual void VerifyObject (Verify &Verifier, IFrameStream &Stream) const
 Verify an object.
 
virtual void Write (ostream_type &Stream) const=0
 Write object to the stream.
 
virtual void Write (ostream_type &Stream) const=0
 Write object to the stream.
 

Static Public Member Functions

static object_type DemoteObject (frame_spec_version_type Target, object_type Obj, demote_stream_type *Stream)
 Down grade an object.
 
static object_type DemoteObject (frame_spec_version_type Target, object_type Obj, demote_stream_type *Stream)
 Down grade an object.
 
static object_type PromoteObject (frame_spec_version_type Target, frame_spec_version_type Source, object_type Obj, stream_base_type *Stream)
 Upgrade an object.
 
template<typename PreviousType, typename CurrentType>
static object_type PromoteObject (frame_spec_version_type Target, frame_spec_version_type Source, object_type Obj, stream_base_type *Stream)
 Upgrade an object.
 
static object_type PromoteObject (frame_spec_version_type Target, frame_spec_version_type Source, object_type Obj, stream_base_type *Stream)
 Upgrade an object.
 
template<typename PreviousType, typename CurrentType>
static object_type PromoteObject (frame_spec_version_type Target, frame_spec_version_type Source, object_type Obj, stream_base_type *Stream)
 Upgrade an object.
 

Protected Member Functions

virtual demote_ret_type demote (frame_spec_version_type Target, demote_arg_type Obj, demote_stream_type *Stream) const=0
 Demotes object to previous version of the frame spec.
 
virtual demote_ret_type demote (frame_spec_version_type Target, demote_arg_type Obj, demote_stream_type *Stream) const=0
 Demotes object to previous version of the frame spec.
 
virtual promote_ret_type promote (frame_spec_version_type Target, promote_arg_type Obj, promote_stream_type *Stream) const=0
 Promotes object to another version of the frame spec.
 
virtual promote_ret_type promote (frame_spec_version_type Target, promote_arg_type Obj, promote_stream_type *Stream) const=0
 Promotes object to another version of the frame spec.
 
virtual class_type getClass () const=0
 Retrieve the class name associated with the object.
 
virtual class_type getClass () const=0
 Retrieve the class name associated with the object.
 

Member Typedef Documentation

◆ demote_arg_type [1/2]

◆ demote_arg_type [2/2]

◆ demote_ret_type [1/2]

◆ demote_ret_type [2/2]

◆ demote_stream_type [1/2]

◆ demote_stream_type [2/2]

◆ frame_spec_version_type [1/2]

◆ frame_spec_version_type [2/2]

◆ object_type [1/2]

◆ object_type [2/2]

◆ promote_arg_type [1/2]

◆ promote_arg_type [2/2]

◆ promote_ret_type [1/2]

◆ promote_ret_type [2/2]

◆ promote_stream_type [1/2]

◆ promote_stream_type [2/2]

◆ unique_object_type [1/2]

◆ unique_object_type [2/2]

Constructor & Destructor Documentation

◆ ~ObjectInterface() [1/2]

FrameCPP::Common::FrameSpec::ObjectInterface::~ObjectInterface ( )
virtual

Destructor.

Release the resources back to the system. By being virtual, all the resources associated with any derived class are given a chance for proper cleanup.

◆ ~ObjectInterface() [2/2]

virtual FrameCPP::Common::FrameSpec::ObjectInterface::~ObjectInterface ( )
virtual

Destructor.

Member Function Documentation

◆ Bytes() [1/2]

virtual streamsize_type FrameCPP::Common::FrameSpec::ObjectInterface::Bytes ( const stream_base_type & Stream) const
pure virtual

Return the number of bytes for this object.

Parameters
[in]StreamThe stream on which the object will be written or read.
Returns
The number of bytes required by this object for the specified stream.

◆ Bytes() [2/2]

virtual streamsize_type FrameCPP::Common::FrameSpec::ObjectInterface::Bytes ( const stream_base_type & Stream) const
pure virtual

Return the number of bytes for this object.

Parameters
[in]StreamThe stream on which the object will be written or read.
Returns
The number of bytes required by this object for the specified stream.

◆ Clone() [1/2]

FrameSpec::Object * FrameCPP::Common::FrameSpec::ObjectInterface::Clone ( ) const
virtual

constructor - virtual copy constructor

◆ Clone() [2/2]

virtual Object * FrameCPP::Common::FrameSpec::ObjectInterface::Clone ( ) const
virtual

constructor - virtual copy constructor

◆ Create() [1/6]

FrameSpec::Object * FrameCPP::Common::FrameSpec::ObjectInterface::Create ( ) const
virtual

constructor - virtual

◆ Create() [2/6]

virtual Object * FrameCPP::Common::FrameSpec::ObjectInterface::Create ( ) const
virtual

constructor - virtual

◆ Create() [3/6]

virtual Object * FrameCPP::Common::FrameSpec::ObjectInterface::Create ( istream_type & Stream) const
pure virtual

constructor - virtual

◆ Create() [4/6]

virtual Object * FrameCPP::Common::FrameSpec::ObjectInterface::Create ( istream_type & Stream) const
pure virtual

constructor - virtual

◆ Create() [5/6]

FrameSpec::Object * FrameCPP::Common::FrameSpec::ObjectInterface::Create ( std::istream & Buffer) const
virtual

constructor - virtual

◆ Create() [6/6]

virtual Object * FrameCPP::Common::FrameSpec::ObjectInterface::Create ( std::istream & Buffer) const
virtual

constructor - virtual

◆ demote() [1/2]

virtual demote_ret_type FrameCPP::Common::FrameSpec::ObjectInterface::demote ( frame_spec_version_type Target,
demote_arg_type Obj,
demote_stream_type * Stream ) const
protectedpure virtual

Demotes object to previous version of the frame spec.

Parameters
[in]TargetThe version of the frame specification to demote too.
[in]ObjThe version of the object to demote.
[in]StreamThe input stream from which the original object was read.
Returns
An object of the previous generation.

◆ demote() [2/2]

virtual demote_ret_type FrameCPP::Common::FrameSpec::ObjectInterface::demote ( frame_spec_version_type Target,
demote_arg_type Obj,
demote_stream_type * Stream ) const
protectedpure virtual

Demotes object to previous version of the frame spec.

Parameters
[in]TargetThe version of the frame specification to demote too.
[in]ObjThe version of the object to demote.
[in]StreamThe input stream from which the original object was read.
Returns
An object of the previous generation.

◆ DemoteObject() [1/2]

FrameSpec::ObjectInterface::object_type FrameCPP::Common::FrameSpec::ObjectInterface::DemoteObject ( frame_spec_version_type Target,
object_type Obj,
demote_stream_type * Stream )
static

Down grade an object.

Parameters
[in]TargetThis is the version of the frame specification of the demoted object.
[in]ObjThe base object.
[in]StreamStream from which Obj was created.
Returns
A pointer to the objected derived by demoting Obj.

◆ DemoteObject() [2/2]

static object_type FrameCPP::Common::FrameSpec::ObjectInterface::DemoteObject ( frame_spec_version_type Target,
object_type Obj,
demote_stream_type * Stream )
static

Down grade an object.

Parameters
[in]TargetThis is the version of the frame specification of the demoted object.
[in]ObjThe base object.
[in]StreamStream from which Obj was created.
Returns
A pointer to the objected derived by demoting Obj.

◆ getClass() [1/2]

virtual class_type FrameCPP::Common::FrameSpec::ObjectInterface::getClass ( ) const
protectedpure virtual

Retrieve the class name associated with the object.

◆ getClass() [2/2]

virtual class_type FrameCPP::Common::FrameSpec::ObjectInterface::getClass ( ) const
protectedpure virtual

Retrieve the class name associated with the object.

◆ GetDescription() [1/4]

virtual const Description * FrameCPP::Common::FrameSpec::ObjectInterface::GetDescription ( ) const
pure virtual

Get FrSH/FrSE description of object.

◆ GetDescription() [2/4]

virtual const Description * FrameCPP::Common::FrameSpec::ObjectInterface::GetDescription ( ) const
pure virtual

Get FrSH/FrSE description of object.

◆ GetDescription() [3/4]

virtual const Description * FrameCPP::Common::FrameSpec::ObjectInterface::GetDescription ( ostream_type & Stream) const
pure virtual

◆ GetDescription() [4/4]

virtual const Description * FrameCPP::Common::FrameSpec::ObjectInterface::GetDescription ( ostream_type & Stream) const
pure virtual

◆ ObjectStructName() [1/2]

virtual const char * FrameCPP::Common::FrameSpec::ObjectInterface::ObjectStructName ( ) const
pure virtual

Retrieve the class name of the object.

Returns
The name of the class associated with the object.

◆ ObjectStructName() [2/2]

virtual const char * FrameCPP::Common::FrameSpec::ObjectInterface::ObjectStructName ( ) const
pure virtual

Retrieve the class name of the object.

Returns
The name of the class associated with the object.

◆ operator==() [1/2]

virtual bool FrameCPP::Common::FrameSpec::ObjectInterface::operator== ( const Object & Obj) const
pure virtual

comparison operator

◆ operator==() [2/2]

virtual bool FrameCPP::Common::FrameSpec::ObjectInterface::operator== ( const Object & Obj) const
pure virtual

comparison operator

◆ promote() [1/2]

virtual promote_ret_type FrameCPP::Common::FrameSpec::ObjectInterface::promote ( frame_spec_version_type Target,
promote_arg_type Obj,
promote_stream_type * Stream ) const
protectedpure virtual

Promotes object to another version of the frame spec.

Parameters
[in]TargetThe version of the promoted frame specification.
[in]ObjThe object to be promoted.
[in]StreamThe input stream from which the original object was read.
Returns
An object promoted to the next generation.

◆ promote() [2/2]

virtual promote_ret_type FrameCPP::Common::FrameSpec::ObjectInterface::promote ( frame_spec_version_type Target,
promote_arg_type Obj,
promote_stream_type * Stream ) const
protectedpure virtual

Promotes object to another version of the frame spec.

Parameters
[in]TargetThe version of the promoted frame specification.
[in]ObjThe object to be promoted.
[in]StreamThe input stream from which the original object was read.
Returns
An object promoted to the next generation.

◆ PromoteObject() [1/5]

FrameSpec::ObjectInterface::object_type FrameCPP::Common::FrameSpec::ObjectInterface::PromoteObject ( frame_spec_version_type Target,
frame_spec_version_type Source,
object_type Obj,
stream_base_type * Stream )
static

Upgrade an object.

Parameters
[in]TargetPromote Obj to this version of the frame specification.
[in]SourceObj conforms to this version of the frame specification.
[in]ObjObject to be converted
[in]StreamOriginating stream for Obj.
Returns
A pointer to the objected derived by promoting Obj.

◆ PromoteObject() [2/5]

template<typename PreviousType, typename CurrentType>
static object_type FrameCPP::Common::FrameSpec::ObjectInterface::PromoteObject ( frame_spec_version_type Target,
frame_spec_version_type Source,
object_type Obj,
stream_base_type * Stream )
static

Upgrade an object.

Parameters
[in]TargetPromote Obj to this version of the frame specification.
[in]SourceObj conforms to this version of the frame specification.
[in]ObjObject to be converted
[in]StreamOriginating stream for Obj.
Returns
A pointer to the objected derived by promoting Obj.

◆ PromoteObject() [3/5]

static object_type FrameCPP::Common::FrameSpec::ObjectInterface::PromoteObject ( frame_spec_version_type Target,
frame_spec_version_type Source,
object_type Obj,
stream_base_type * Stream )
static

Upgrade an object.

Parameters
[in]TargetPromote Obj to this version of the frame specification.
[in]SourceObj conforms to this version of the frame specification.
[in]ObjObject to be converted
[in]StreamOriginating stream for Obj.
Returns
A pointer to the objected derived by promoting Obj.

◆ PromoteObject() [4/5]

template<typename PreviousType, typename CurrentType>
static object_type FrameCPP::Common::FrameSpec::ObjectInterface::PromoteObject ( frame_spec_version_type Target,
frame_spec_version_type Source,
object_type Obj,
stream_base_type * Stream )
static

Upgrade an object.

Parameters
[in]TargetPromote Obj to this version of the frame specification.
[in]SourceObj conforms to this version of the frame specification.
[in]ObjObject to be converted
[in]StreamOriginating stream for Obj.
Returns
A pointer to the objected derived by promoting Obj.

◆ PromoteObject() [5/5]

template<typename PreviousType, typename CurrentType>
FrameSpec::ObjectInterface::promote_ret_type FrameCPP::Common::FrameSpec::ObjectInterface::PromoteObject ( FrameSpec::ObjectInterface::frame_spec_version_type Target,
FrameSpec::ObjectInterface::frame_spec_version_type Source,
FrameSpec::ObjectInterface::promote_arg_type Obj,
promote_stream_type * Stream )

◆ VerifyObject() [1/2]

void FrameCPP::Common::FrameSpec::ObjectInterface::VerifyObject ( Verify & Verifier,
IFrameStream & Stream ) const
virtual

Verify an object.

Parameters
[in,out]VerifierSet of rules to use in verification of the object. If an error occurs, the violation is logged here.
[in]StreamThe stream that is being used to read the object.

◆ VerifyObject() [2/2]

virtual void FrameCPP::Common::FrameSpec::ObjectInterface::VerifyObject ( Verify & Verifier,
IFrameStream & Stream ) const
virtual

Verify an object.

Parameters
[in,out]VerifierSet of rules to use in verification of the object. If an error occurs, the violation is logged here.
[in]StreamThe stream that is being used to read the object.

◆ Write() [1/2]

virtual void FrameCPP::Common::FrameSpec::ObjectInterface::Write ( ostream_type & Stream) const
pure virtual

Write object to the stream.

Parameters
[in,out]StreamThe stream being written with the contents of object.

◆ Write() [2/2]

virtual void FrameCPP::Common::FrameSpec::ObjectInterface::Write ( ostream_type & Stream) const
pure virtual

Write object to the stream.

Parameters
[in,out]StreamThe stream being written with the contents of object.

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