ldas-tools-framecpp  2.5.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
FrameCPP::Common::OStream Class Reference

#include <IOStream.hh>

Inheritance diagram for FrameCPP::Common::OStream:
FrameCPP::Common::StreamBase FrameCPP::Common::OFrameStream

Classes

class  Pointer
 

Public Types

typedef std::ostream ostream_type
 
typedef ostream_type::char_type char_type
 
typedef FrameBufferInterface buffer_type
 
typedef
LDASTools::AL::SharedPtr
< FrameSpec::Object
object_type
 
typedef const
Dictionary::streamref_type::element_type * 
const_stream_ref_ptr_type
 
typedef Dictionary::streamref_type streamref_type
 

Public Member Functions

 OStream (buffer_type *Buffer, bool AutoDelete=true)
 
virtual ~OStream ()
 
void Compression (INT_2U &CompressionScheme, INT_2U &CompressionLevel)
 
INT_2U CompressionScheme () const
 
INT_2U CompressionLevel () const
 
template<typename Header >
const Header * GetFrHeader () const
 
virtual INT_8U GetTOCOffset () const
 
void Next (object_type Obj, object_type NextObj)
 
object_type Next (object_type Obj) const
 
const PTR_STRUCT_BASEReference (object_type Obj) const
 
OStreamwrite (const char_type *S, std::streamsize N)
 
object_type Pop ()
 Get an object from the output queue. More...
 
void PushSingle (object_type Obj)
 Append an object to the output queue. More...
 
template<typename Iter >
void PushMulti (Iter Start, Iter End, size_t Size)
 Append multiple objects to the output queue. More...
 
const Common::PTR_STRUCT_BASENextPtrStruct (object_type Cur) const
 Create a PTR_STRUCT for next object. More...
 
const Common::PTR_STRUCT_BASENextPtrStruct (const object_type::element_type *Cur) const
 Create a PTR_STRUCT for next object. More...
 
virtual INT_4U GetNumberOfFrames () const
 
OStreamoperator<< (object_type Data)
 
OStreamoperator<< (Pointer Data)
 
template<typename T , const std::string &(T::*)() const F>
OStreamoperator<< (const SearchContainer< T, F > &SC)
 
template<typename T >
OStreamoperator<< (const Container< T > &C)
 
template<typename L >
OStreamoperator<< (const STRING< L > &String)
 
template<typename L >
OStreamoperator<< (const STRING_SHADOW< L > &String)
 
template<typename L >
OStreamoperator<< (const std::vector< STRING< L > > &Strings)
 
template<typename DT >
OStreamoperator<< (const std::vector< DT > &N)
 
template<typename DT >
OStreamoperator<< (const DT &N)
 
buffer_typerdbuf () const
 
CheckSumFilterGetCheckSumFile () const
 
void SetCheckSumFile (const CheckSum::kind_type Type)
 
CheckSumFilterGetCheckSumFrame () const
 
void SetCheckSumFrame (const CheckSum::kind_type Type)
 
CheckSumFilterGetCheckSumObject () const
 
void SetCheckSumObject (const CheckSum::kind_type Type)
 
template<>
OStreamoperator<< (const LDASTools::AL::GPSTime &Data)
 
virtual void Cleanup ()
 
INT_2U GetClassId (const std::string &ClassName) const
 
INT_2U GetFSIId (INT_2U StreamId) const
 
cmn_streamsize_type PtrStructBytes () const
 
const_stream_ref_ptr_type ReferenceStreamRef () const
 
const DictionaryGetDictionary () const
 
DictionaryGetDictionary ()
 

Protected Types

typedef
FrameSpec::ObjectInterface::unique_object_type 
unique_object_type
 
typedef std::unique_ptr
< CheckSumFilter
checksum_filter_type
 
typedef std::unique_ptr
< MD5SumFilter
md5sum_filter_type
 
typedef
LDASTools::AL::unordered_map
< INT_2U, INT_2U > 
streamid_to_fsiid_type
 
typedef
LDASTools::AL::SharedPtr
< PTR_STRUCT_BASE
ptr_struct_base_type
 

Protected Member Functions

void setFrHeader (unique_object_type &Obj)
 
void setAutoDeleteBuffer (const bool Value)
 Establish if the buffer is to be released with the Stream. More...
 
const FrameSpec::InfoframeSpecInfo () const
 
virtual void frameSpecInfo (const FrameSpec::Info *Spec)
 

Protected Attributes

Dictionary m_dictionary
 
object_type m_null_stream_ref
 
ptr_struct_base_type m_ptr_struct_object
 
streamid_to_fsiid_type m_stream_id_to_fsi_id
 
checksum_filter_type m_file_checksum
 Checksum for file. More...
 
checksum_filter_type m_frame_checksum
 Checksum for frame. More...
 
checksum_filter_type m_obj_checksum
 Checksum for object. More...
 
md5sum_filter_type m_file_md5sum
 MD5Sum value for the files. More...
 

Member Typedef Documentation

typedef std::unique_ptr<CheckSumFilter> FrameCPP::Common::StreamBase::checksum_filter_type
protectedinherited
typedef const Dictionary::streamref_type::element_type* FrameCPP::Common::StreamBase::const_stream_ref_ptr_type
inherited
typedef std::unique_ptr< MD5SumFilter > FrameCPP::Common::StreamBase::md5sum_filter_type
protectedinherited
typedef LDASTools::AL::SharedPtr< FrameSpec::Object > FrameCPP::Common::StreamBase::object_type
inherited
typedef LDASTools::AL::SharedPtr< PTR_STRUCT_BASE > FrameCPP::Common::StreamBase::ptr_struct_base_type
protectedinherited
typedef LDASTools::AL::unordered_map< INT_2U, INT_2U > FrameCPP::Common::StreamBase::streamid_to_fsiid_type
protectedinherited

Constructor & Destructor Documentation

FrameCPP::Common::OStream::OStream ( buffer_type Buffer,
bool  AutoDelete = true 
)
inline
FrameCPP::Common::OStream::~OStream ( )
inlinevirtual

Member Function Documentation

void FrameCPP::Common::StreamBase::Cleanup ( )
virtualinherited
void FrameCPP::Common::OStream::Compression ( INT_2U &  CompressionScheme,
INT_2U &  CompressionLevel 
)
inline

param[in,out] CompressionScheme param[in,out] CompressionType

INT_2U FrameCPP::Common::OStream::CompressionLevel ( ) const
inline
INT_2U FrameCPP::Common::OStream::CompressionScheme ( ) const
inline
const FrameSpec::Info & FrameCPP::Common::StreamBase::frameSpecInfo ( ) const
inlineprotectedinherited
void FrameCPP::Common::StreamBase::frameSpecInfo ( const FrameSpec::Info Spec)
protectedvirtualinherited

Reimplemented in FrameCPP::Common::FrameStream.

CheckSumFilter * FrameCPP::Common::OStream::GetCheckSumFile ( ) const
inline
CheckSumFilter * FrameCPP::Common::OStream::GetCheckSumFrame ( ) const
inline
CheckSumFilter * FrameCPP::Common::OStream::GetCheckSumObject ( ) const
inline
INT_2U FrameCPP::Common::StreamBase::GetClassId ( const std::string &  ClassName) const
inherited
const Dictionary & FrameCPP::Common::StreamBase::GetDictionary ( ) const
inlineinherited
Dictionary & FrameCPP::Common::StreamBase::GetDictionary ( )
inlineinherited
template<typename Header >
const Header * FrameCPP::Common::OStream::GetFrHeader ( ) const
inline
INT_2U FrameCPP::Common::StreamBase::GetFSIId ( INT_2U  StreamId) const
inlineinherited
INT_4U FrameCPP::Common::OStream::GetNumberOfFrames ( ) const
inlinevirtual

Reimplemented in FrameCPP::Common::OFrameStream.

INT_8U FrameCPP::Common::OStream::GetTOCOffset ( ) const
virtual

Reimplemented in FrameCPP::Common::OFrameStream.

void FrameCPP::Common::OStream::Next ( object_type  Obj,
object_type  NextObj 
)
OStream::object_type FrameCPP::Common::OStream::Next ( object_type  Obj) const
const PTR_STRUCT_BASE & FrameCPP::Common::OStream::NextPtrStruct ( object_type  Cur) const

Create a PTR_STRUCT for next object.

const PTR_STRUCT_BASE & FrameCPP::Common::OStream::NextPtrStruct ( const object_type::element_type *  Cur) const

Create a PTR_STRUCT for next object.

OStream & FrameCPP::Common::OStream::operator<< ( object_type  Data)
inline
Todo:
support MD5Sum
OStream & FrameCPP::Common::OStream::operator<< ( Pointer  Data)
inline
template<typename T , const std::string &(T::*)() const F>
OStream& FrameCPP::Common::OStream::operator<< ( const SearchContainer< T, F > &  SC)
inline
template<typename T >
OStream& FrameCPP::Common::OStream::operator<< ( const Container< T > &  C)
inline
template<typename L >
OStream& FrameCPP::Common::OStream::operator<< ( const STRING< L > &  String)
inline
template<typename L >
OStream& FrameCPP::Common::OStream::operator<< ( const STRING_SHADOW< L > &  String)
inline
template<typename L >
OStream& FrameCPP::Common::OStream::operator<< ( const std::vector< STRING< L > > &  Strings)
inline
template<typename DT >
OStream & FrameCPP::Common::OStream::operator<< ( const std::vector< DT > &  N)
inline
template<typename DT >
OStream & FrameCPP::Common::OStream::operator<< ( const DT &  N)
inline
template<>
OStream& FrameCPP::Common::OStream::operator<< ( const LDASTools::AL::GPSTime &  Data)
inline
OStream::object_type FrameCPP::Common::OStream::Pop ( )
inline

Get an object from the output queue.

Returns
The next object to be written to the stream.

This method retieves the next object to be written along with information indicating if the object should be deallocated once written.

cmn_streamsize_type FrameCPP::Common::StreamBase::PtrStructBytes ( ) const
inlineinherited
template<typename Iter >
void FrameCPP::Common::OStream::PushMulti ( Iter  Start,
Iter  End,
size_t  Size 
)
inline

Append multiple objects to the output queue.

Parameters
[in]StartThe first element to be added to the queue.
[in]EndThe last element to be added to the queue.
[in]SizeThe number of elements to be added to the queue.
void FrameCPP::Common::OStream::PushSingle ( object_type  Obj)
inline

Append an object to the output queue.

Parameters
[in]ObjThe object to be written.

This method adds an object to the queue of objects to be written. It preserves the order in which the objects should be written to the stream by keeping a local iterator indicating the point of insertion.

buffer_type* FrameCPP::Common::OStream::rdbuf ( ) const
inline
const PTR_STRUCT_BASE & FrameCPP::Common::OStream::Reference ( object_type  Obj) const
StreamBase::const_stream_ref_ptr_type FrameCPP::Common::StreamBase::ReferenceStreamRef ( ) const
inherited
void FrameCPP::Common::OStream::setAutoDeleteBuffer ( const bool  Value)
inlineprotected

Establish if the buffer is to be released with the Stream.

Parameters
[in]ValueIf true, then the buffer will be released with the destruction of this instance. If false, then the buffer will exist even after the destruction of this instance.
void FrameCPP::Common::OStream::SetCheckSumFile ( const CheckSum::kind_type  Type)
inline
void FrameCPP::Common::OStream::SetCheckSumFrame ( const CheckSum::kind_type  Type)
inline
void FrameCPP::Common::OStream::SetCheckSumObject ( const CheckSum::kind_type  Type)
inline
void FrameCPP::Common::OStream::setFrHeader ( unique_object_type Obj)
inlineprotected
OStream & FrameCPP::Common::OStream::write ( const char_type S,
std::streamsize  N 
)
inline

Member Data Documentation

Dictionary FrameCPP::Common::StreamBase::m_dictionary
protectedinherited
checksum_filter_type FrameCPP::Common::StreamBase::m_file_checksum
protectedinherited

Checksum for file.

md5sum_filter_type FrameCPP::Common::StreamBase::m_file_md5sum
protectedinherited

MD5Sum value for the files.

checksum_filter_type FrameCPP::Common::StreamBase::m_frame_checksum
protectedinherited

Checksum for frame.

object_type FrameCPP::Common::StreamBase::m_null_stream_ref
protectedinherited
checksum_filter_type FrameCPP::Common::StreamBase::m_obj_checksum
protectedinherited

Checksum for object.

ptr_struct_base_type FrameCPP::Common::StreamBase::m_ptr_struct_object
protectedinherited
streamid_to_fsiid_type FrameCPP::Common::StreamBase::m_stream_id_to_fsi_id
mutableprotectedinherited

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