ldas-tools-framecpp  2.5.8
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
FrameCPP::Version_3::FrHeader Class Reference

#include <FrHeader.hh>

Inheritance diagram for FrameCPP::Version_3::FrHeader:
FrameCPP::Common::FrameSpec::Object FrameCPP::Common::FrHeader FrameCPP::Common::FrameSpec::ObjectInterface

Public Types

typedef FrameSpec::version_type frame_spec_version_type
 
typedef LDASTools::AL::SharedPtr< Objectobject_type
 
typedef std::unique_ptr< Objectunique_object_type
 
typedef object_type demote_arg_type
 
typedef object_type demote_ret_type
 
typedef object_type promote_arg_type
 
typedef object_type promote_ret_type
 
enum  frame_library_type { FRAME_LIBRARY_UNKNOWN = 0, FRAME_LIBRARY_FRAMEL = 1, FRAME_LIBRARY_FRAMECPP = 2 }
 
typedef FR_HEADER__VERSION_TYPE version_type
 
typedef FR_HEADER__LIBRARY_REVISION_TYPE library_revision_type
 
typedef CHAR * originator_type
 

Public Member Functions

 FrHeader ()
 
virtual ~FrHeader ()
 
virtual FrHeaderClone () const
 constructor - virtual copy constructor More...
 
const unsigned char * Get8ByteEndianness () const
 
int GetByteOrder () const
 
void SetOriginator (const std::string &Originator)
 
virtual Common::FrameSpec::size_type Bytes () const
 
virtual Common::FrameSpec::size_type Bytes (const Common::StreamBase &Stream) const
 Return the number of bytes for this object. More...
 
virtual bool ByteSwapping () const
 
virtual const Common::FrameSpec::ObjectDescription () const
 
virtual FrHeaderCreate (istream_type &Stream) const
 Constructor - virtual. More...
 
virtual FrHeaderCreate (std::istream &Stream) const
 Constructor - virtual. More...
 
void Filter (Common::StreamFilter &SFilter) const
 
virtual const char * ObjectStructName () const
 Retrieve the class name of the object. More...
 
virtual void VerifyObject (Common::Verify &Verifier, Common::IFrameStream &Stream) const
 Verify an object. More...
 
void Write (Common::OStream &Stream) const
 Write object to the stream. More...
 
virtual bool operator== (const Common::FrameSpec::Object &Obj) const
 comparison operator More...
 
class_type GetClass () const
 Retrieve the class identifier. More...
 
const DescriptionGetDescription () const
 Retrieve FrSH/FrSE description of the parent object. More...
 
ostream_typeWriteNext (ostream_type &Stream) const
 Write a next pointer to the parent to the stream. More...
 
virtual ObjectCreate () const
 constructor - virtual More...
 
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, IStream *Stream)
 
frame_library_type GetFrameLibrary () const
 Retrieve the library used to generate the frame stream. More...
 
std::string GetFrameLibraryName () const
 Retrieve the library used to generate the frame stream. More...
 
library_revision_type GetLibraryRevision () const
 
version_type GetVersion () const
 
originator_type GetOriginator () const
 
virtual bool IsValid () const
 
void SetLibraryVersion (INT_2U Version)
 Establish the version of the Library used. More...
 
void SetVersion (INT_2U Version)
 Establish the version of the frame specification. More...
 

Static Public Member Functions

static object_type DemoteObject (frame_spec_version_type Target, object_type Obj, istream_type *Stream)
 Down grade an object. More...
 
static object_type PromoteObject (frame_spec_version_type Target, frame_spec_version_type Source, object_type Obj, istream_type *Stream)
 Upgrade an object. More...
 
template<typename PreviousType , typename CurrentType >
static object_type PromoteObject (frame_spec_version_type Target, frame_spec_version_type Source, object_type Obj, istream_type *Stream)
 Upgrade an object. More...
 
static cmn_streamsize_type SizeOf ()
 
static std::string GetFrameLibraryName (frame_library_type LibraryId)
 Retrieve the library used to generate the frame stream. More...
 

Static Public Attributes

static const char * ORIGINATOR_IGWD = "IGWD"
 

Protected Member Functions

 FrHeader (const FrHeader &Source)
 
 FrHeader (std::istream &Source)
 
virtual demote_ret_type demote (INT_2U Target, demote_arg_type Obj, istream_type *Stream) const
 Down grade an object. More...
 
virtual promote_ret_type promote (INT_2U Target, promote_arg_type, istream_type *Stream) const
 Upgrade an object. More...
 
virtual class_type getClass () const
 Retrieve the class identifier. More...
 
virtual void complete ()
 Entry point to do extra processing. More...
 

Protected Attributes

frame_library_type m_frame_library
 

Member Typedef Documentation

◆ demote_arg_type

◆ demote_ret_type

◆ frame_spec_version_type

◆ library_revision_type

typedef FR_HEADER__LIBRARY_REVISION_TYPE FrameCPP::Common::FrHeader::library_revision_type
inherited

◆ object_type

typedef LDASTools::AL::SharedPtr< Object > FrameCPP::Common::FrameSpec::ObjectInterface::object_type
inherited

◆ originator_type

typedef CHAR* FrameCPP::Common::FrHeader::originator_type
inherited

◆ promote_arg_type

◆ promote_ret_type

◆ unique_object_type

◆ version_type

typedef FR_HEADER__VERSION_TYPE FrameCPP::Common::FrHeader::version_type
inherited

Member Enumeration Documentation

◆ frame_library_type

enum FrameCPP::Common::FrHeader::frame_library_type
inherited
Enumerator
FRAME_LIBRARY_UNKNOWN 
FRAME_LIBRARY_FRAMEL 
FRAME_LIBRARY_FRAMECPP 

Constructor & Destructor Documentation

◆ FrHeader() [1/3]

FrameCPP::Version_3::FrHeader::FrHeader ( )

◆ ~FrHeader()

FrameCPP::Version_3::FrHeader::~FrHeader ( )
virtual

Reimplemented from FrameCPP::Common::FrHeader.

◆ FrHeader() [2/3]

FrameCPP::Version_3::FrHeader::FrHeader ( const FrHeader Source)
protected

◆ FrHeader() [3/3]

FrameCPP::Version_3::FrHeader::FrHeader ( std::istream &  Source)
protected

Member Function Documentation

◆ Bytes() [1/2]

FrameSpec::size_type FrameCPP::Version_3::FrHeader::Bytes ( ) const
virtual

Reimplemented from FrameCPP::Common::FrHeader.

◆ Bytes() [2/2]

FrameSpec::size_type FrameCPP::Version_3::FrHeader::Bytes ( const Common::StreamBase Stream) const
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.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ ByteSwapping()

bool FrameCPP::Version_3::FrHeader::ByteSwapping ( ) const
virtual

Reimplemented from FrameCPP::Common::FrHeader.

◆ Clone()

FrHeader * FrameCPP::Version_3::FrHeader::Clone ( ) const
virtual

constructor - virtual copy constructor

Reimplemented from FrameCPP::Common::FrameSpec::ObjectInterface.

◆ complete()

void FrameCPP::Common::FrHeader::complete ( )
protectedvirtualinherited

Entry point to do extra processing.

Reimplemented in FrameCPP::Version_8::FrHeader.

◆ Create() [1/3]

FrHeader * FrameCPP::Version_3::FrHeader::Create ( istream_type Stream) const
virtual

Constructor - virtual.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ Create() [2/3]

FrHeader * FrameCPP::Version_3::FrHeader::Create ( std::istream &  Stream) const
virtual

Constructor - virtual.

Reimplemented from FrameCPP::Common::FrameSpec::ObjectInterface.

◆ Create() [3/3]

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

◆ demote()

FrHeader::demote_ret_type FrameCPP::Version_3::FrHeader::demote ( INT_2U  Target,
demote_arg_type  Obj,
istream_type Stream 
) const
protectedvirtual

Down grade an object.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ DemoteObject()

FrameSpec::ObjectInterface::object_type FrameCPP::Common::FrameSpec::ObjectInterface::DemoteObject ( frame_spec_version_type  Target,
object_type  Obj,
istream_type Stream 
)
staticinherited

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.

◆ Description()

const FrameSpec::Object * FrameCPP::Version_3::FrHeader::Description ( ) const
virtual

◆ Filter()

void FrameCPP::Version_3::FrHeader::Filter ( Common::StreamFilter SFilter) const
inlinevirtual

Reimplemented from FrameCPP::Common::FrHeader.

◆ Get8ByteEndianness()

const unsigned char * FrameCPP::Version_3::FrHeader::Get8ByteEndianness ( ) const
inline

◆ GetByteOrder()

int FrameCPP::Version_3::FrHeader::GetByteOrder ( ) const
inline

◆ GetClass()

FrameSpec::class_type FrameCPP::Common::FrameSpec::Object::GetClass ( ) const
inlineinherited

Retrieve the class identifier.

Returns
The class identifier.

◆ getClass()

FrameSpec::class_type FrameCPP::Common::FrameSpec::Object::getClass ( ) const
protectedvirtualinherited

Retrieve the class identifier.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ GetDescription()

const Description * FrameCPP::Common::FrameSpec::Object::GetDescription ( ) const
inlinevirtualinherited

Retrieve FrSH/FrSE description of the parent object.

Returns
The description of the parent class.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ GetFrameLibrary()

FrHeader::frame_library_type FrameCPP::Common::FrHeader::GetFrameLibrary ( ) const
inlineinherited

Retrieve the library used to generate the frame stream.

◆ GetFrameLibraryName() [1/2]

std::string FrameCPP::Common::FrHeader::GetFrameLibraryName ( ) const
inlineinherited

Retrieve the library used to generate the frame stream.

◆ GetFrameLibraryName() [2/2]

std::string FrameCPP::Common::FrHeader::GetFrameLibraryName ( frame_library_type  LibraryId)
inlinestaticinherited

Retrieve the library used to generate the frame stream.

◆ GetLibraryRevision()

FrHeader::library_revision_type FrameCPP::Common::FrHeader::GetLibraryRevision ( ) const
inlineinherited

◆ GetOriginator()

FrHeader::originator_type FrameCPP::Common::FrHeader::GetOriginator ( ) const
inlineinherited

◆ GetVersion()

FrHeader::version_type FrameCPP::Common::FrHeader::GetVersion ( ) const
inlineinherited

◆ IsValid()

bool FrameCPP::Common::FrHeader::IsValid ( ) const
virtualinherited

◆ ObjectStructName()

const char * FrameCPP::Version_3::FrHeader::ObjectStructName ( ) const
virtual

Retrieve the class name of the object.

Returns
The name of the class associated with the object.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ operator==()

bool FrameCPP::Version_3::FrHeader::operator== ( const Common::FrameSpec::Object Obj) const
virtual

comparison operator

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ promote()

FrHeader::promote_ret_type FrameCPP::Version_3::FrHeader::promote ( INT_2U  Target,
promote_arg_type  Obj,
istream_type Stream 
) const
protectedvirtual

Upgrade an object.

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ PromoteObject() [1/3]

FrameSpec::ObjectInterface::object_type FrameCPP::Common::FrameSpec::ObjectInterface::PromoteObject ( frame_spec_version_type  Target,
frame_spec_version_type  Source,
object_type  Obj,
istream_type Stream 
)
staticinherited

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/3]

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,
istream_type Stream 
)
staticinherited

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/3]

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,
IStream Stream 
)
inherited

◆ SetLibraryVersion()

void FrameCPP::Common::FrHeader::SetLibraryVersion ( INT_2U  Version)
inlineinherited

Establish the version of the Library used.

◆ SetOriginator()

void FrameCPP::Version_3::FrHeader::SetOriginator ( const std::string &  Originator)

◆ SetVersion()

void FrameCPP::Common::FrHeader::SetVersion ( INT_2U  Version)
inlineinherited

Establish the version of the frame specification.

◆ SizeOf()

cmn_streamsize_type FrameCPP::Common::FrHeader::SizeOf ( )
inlinestaticinherited

◆ VerifyObject()

void FrameCPP::Version_3::FrHeader::VerifyObject ( Common::Verify Verifier,
Common::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.

Reimplemented from FrameCPP::Common::FrameSpec::ObjectInterface.

◆ Write()

void FrameCPP::Version_3::FrHeader::Write ( Common::OStream Stream) const
virtual

Write object to the stream.

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

Implements FrameCPP::Common::FrameSpec::ObjectInterface.

◆ WriteNext()

ostream_type & FrameCPP::Common::FrameSpec::Object::WriteNext ( ostream_type Stream) const
inherited

Write a next pointer to the parent to the stream.

Parameters
[in,out]StreamThe output stream to receive the next pointer.
Returns
The output stream.

Member Data Documentation

◆ m_frame_library

frame_library_type FrameCPP::Common::FrHeader::m_frame_library
protectedinherited

◆ ORIGINATOR_IGWD

const char * FrameCPP::Version_3::FrHeader::ORIGINATOR_IGWD = "IGWD"
static

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