Ariles
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
ariles2::ns_msgpack_compact::Reader Class Reference

Detailed Description

Configuration reader class.

Definition at line 31 of file reader_compact.h.

#include <reader_compact.h>

Inheritance diagram for ariles2::ns_msgpack_compact::Reader:
ariles2::serialization::PIMPLVisitor< read::Visitor, impl::Reader > ariles2::read::Visitor ariles2::serialization::Base< Visitor, Parameters > ariles2::visitor::Base< visitor::GenericVisitor, Parameters > ariles2::visitor::GenericVisitor ariles2::visitor::Visitor

Public Types

enum  SizeLimitEnforcementType {
  SIZE_LIMIT_UNDEFINED = 0, SIZE_LIMIT_NONE = 1, SIZE_LIMIT_EQUAL = 2, SIZE_LIMIT_RANGE = 3,
  SIZE_LIMIT_MIN = 4
}
 
typedef Parameters Parameters
 
typedef void ReturnType
 

Public Member Functions

 Reader (const std::string &file_name)
 Constructor. More...
 
 Reader (std::istream &input_stream)
 Constructor. More...
 
void startMap (const SizeLimitEnforcementType limit_type=SIZE_LIMIT_NONE, const std::size_t min=0, const std::size_t max=0)
 
bool startMapEntry (const std::string &)
 startMapEntry to the entry with the given name More...
 
void endMapEntry ()
 endMapEntry from the current entry to its parent. More...
 
void endMap ()
 
std::size_t startArray ()
 
void startArrayElement ()
 
void endArrayElement ()
 
void endArray ()
 
bool startRoot (const std::vector< std::string > &)
 
void endRoot (const std::vector< std::string > &)
 
template<class t_Entry >
void startMap (t_Entry &entry, const Parameters &parameters)
 
virtual bool startIteratedMap (const SizeLimitEnforcementType=SIZE_LIMIT_NONE, const std::size_t=0, const std::size_t=0)
 
virtual bool startIteratedMapElement (std::string &)
 
virtual void endIteratedMapElement ()
 
virtual void endIteratedMap ()
 
bool startPointer (const Parameters &param)
 
void endPointer (const bool is_null)
 
virtual std::size_t startVector ()
 
virtual void startVectorElement ()
 
virtual void endVectorElement ()
 
virtual void endVector ()
 
virtual void startMatrix (std::size_t &cols, std::size_t &rows, const bool dynamic, const Parameters &param)
 
virtual void startMatrixRow (const std::size_t row_index, const std::size_t cols, const Parameters &param)
 
virtual void startMatrixElement ()
 
virtual void endMatrixElement ()
 
virtual void endMatrixRow (const Parameters &param)
 
virtual void endMatrix (const bool dynamic, const Parameters &param)
 
template<class t_Scalar >
void readElement (std::complex< t_Scalar > &entry)
 
virtual void readElement (std::complex< float > &entry)
 
virtual void readElement (std::complex< double > &entry)
 
template<class t_Entry , class t_Subtree >
ARILES2_BASIC_TYPES_LIST void visit (t_Entry &entry, const t_Subtree &subtree, const Parameters &param)
 
template<class t_Entry >
bool visitMapEntry (t_Entry &entry, const std::string &name, const Parameters &param, const bool override_missing_entries_locally=false)
 
template<typename t_Element >
void visitArrayElement (t_Element &element, const Parameters &param)
 
template<typename t_Element >
void visitVectorElement (t_Element &element, const Parameters &)
 
template<typename t_Element >
void visitMatrixElement (t_Element &element, const Parameters &)
 
const ParametersgetParameters (const t_Ariles &ariles_class) const
 

Protected Types

typedef impl::Reader Impl
 
typedef ARILES2_SHARED_PTR< impl::ReaderImplPtr
 

Protected Member Functions

void checkSize (const SizeLimitEnforcementType limit_type, const std::size_t size=0, const std::size_t min=0, const std::size_t max=0) const
 
virtual bool startRoot (const std::string &name)
 
virtual void endRoot (const std::string &name)
 
const std::string & convertSubtreeToString (const std::string &subtree) const
 
std::string convertSubtreeToString (const std::vector< std::string > &subtree) const
 
const ParametersgetDefaultParameters () const
 

Static Protected Member Functions

static void openFile (std::ifstream &config_ifs, const std::string &file_name)
 open configuration file More...
 

Protected Attributes

ImplPtr impl_
 

Member Typedef Documentation

◆ Impl

Definition at line 124 of file serialization.h.

◆ ImplPtr

Definition at line 125 of file serialization.h.

◆ Parameters

Definition at line 144 of file serialization.h.

◆ ReturnType

Definition at line 53 of file common.h.

Member Enumeration Documentation

◆ SizeLimitEnforcementType

Enumerator
SIZE_LIMIT_UNDEFINED 
SIZE_LIMIT_NONE 
SIZE_LIMIT_EQUAL 
SIZE_LIMIT_RANGE 
SIZE_LIMIT_MIN 

Definition at line 47 of file read.h.

Constructor & Destructor Documentation

◆ Reader() [1/2]

ariles2::ns_msgpack_compact::Reader::Reader ( const std::string &  file_name)
explicit

Constructor.

Parameters
[in]file_name

Definition at line 101 of file reader_compact.cpp.

◆ Reader() [2/2]

ariles2::ns_msgpack_compact::Reader::Reader ( std::istream &  input_stream)
explicit

Constructor.

Parameters
[in]input_stream

Definition at line 110 of file reader_compact.cpp.

Member Function Documentation

◆ checkSize()

void ariles2::read::Visitor::checkSize ( const SizeLimitEnforcementType  limit_type,
const std::size_t  size = 0,
const std::size_t  min = 0,
const std::size_t  max = 0 
) const
inlineprotectedinherited

Definition at line 62 of file read.h.

◆ convertSubtreeToString() [1/2]

const std::string& ariles2::read::Visitor::convertSubtreeToString ( const std::string &  subtree) const
inlineprotectedinherited

Definition at line 172 of file read.h.

◆ convertSubtreeToString() [2/2]

std::string ariles2::read::Visitor::convertSubtreeToString ( const std::vector< std::string > &  subtree) const
inlineprotectedinherited

Definition at line 177 of file read.h.

◆ endArray()

void ariles2::ns_msgpack_compact::Reader::endArray ( )
virtual

Implements ariles2::read::Visitor.

Definition at line 159 of file reader_compact.cpp.

◆ endArrayElement()

void ariles2::ns_msgpack_compact::Reader::endArrayElement ( )
virtual

Implements ariles2::read::Visitor.

Definition at line 173 of file reader_compact.cpp.

◆ endIteratedMap()

virtual void ariles2::read::Visitor::endIteratedMap ( )
inlinevirtualinherited

◆ endIteratedMapElement()

virtual void ariles2::read::Visitor::endIteratedMapElement ( )
inlinevirtualinherited

◆ endMap()

void ariles2::ns_msgpack_compact::Reader::endMap ( )
virtual

Reimplemented from ariles2::read::Visitor.

Definition at line 141 of file reader_compact.cpp.

◆ endMapEntry()

void ariles2::ns_msgpack_compact::Reader::endMapEntry ( )
virtual

endMapEntry from the current entry to its parent.

Implements ariles2::read::Visitor.

Definition at line 133 of file reader_compact.cpp.

◆ endMatrix()

virtual void ariles2::read::Visitor::endMatrix ( const bool  dynamic,
const Parameters param 
)
inlinevirtualinherited

Definition at line 371 of file read.h.

◆ endMatrixElement()

virtual void ariles2::read::Visitor::endMatrixElement ( )
inlinevirtualinherited

Definition at line 359 of file read.h.

◆ endMatrixRow()

virtual void ariles2::read::Visitor::endMatrixRow ( const Parameters param)
inlinevirtualinherited

Definition at line 363 of file read.h.

◆ endPointer()

void ariles2::read::Visitor::endPointer ( const bool  is_null)
inlineinherited

Definition at line 278 of file read.h.

◆ endRoot() [1/2]

virtual void ariles2::read::Visitor::endRoot ( const std::string &  name)
inlineprotectedvirtualinherited

◆ endRoot() [2/2]

void ariles2::ns_msgpack_compact::Reader::endRoot ( const std::vector< std::string > &  )
inlinevirtual

Reimplemented from ariles2::read::Visitor.

Definition at line 70 of file reader_compact.h.

◆ endVector()

virtual void ariles2::read::Visitor::endVector ( )
inlinevirtualinherited

Definition at line 305 of file read.h.

◆ endVectorElement()

virtual void ariles2::read::Visitor::endVectorElement ( )
inlinevirtualinherited

Definition at line 301 of file read.h.

◆ getDefaultParameters()

const Parameters & ariles2::visitor::Base< visitor::GenericVisitor , Parameters , void >::getDefaultParameters ( ) const
inlineprotectedinherited

Definition at line 59 of file common.h.

◆ getParameters()

const Parameters & ariles2::serialization::Base< Visitor , Parameters >::getParameters ( const t_Ariles &  ariles_class) const
inlineinherited

Definition at line 151 of file serialization.h.

◆ openFile()

static void ariles2::read::Visitor::openFile ( std::ifstream &  config_ifs,
const std::string &  file_name 
)
inlinestaticprotectedinherited

open configuration file

Parameters
[out]config_ifs
[in]file_name

Definition at line 95 of file read.h.

◆ readElement() [1/3]

virtual void ariles2::read::Visitor::readElement ( std::complex< double > &  entry)
inlinevirtualinherited

Definition at line 409 of file read.h.

◆ readElement() [2/3]

virtual void ariles2::read::Visitor::readElement ( std::complex< float > &  entry)
inlinevirtualinherited

Definition at line 405 of file read.h.

◆ readElement() [3/3]

template<class t_Scalar >
void ariles2::read::Visitor::readElement ( std::complex< t_Scalar > &  entry)
inlineinherited

Definition at line 391 of file read.h.

◆ startArray()

std::size_t ariles2::ns_msgpack_compact::Reader::startArray ( )
virtual

Implements ariles2::read::Visitor.

Definition at line 150 of file reader_compact.cpp.

◆ startArrayElement()

void ariles2::ns_msgpack_compact::Reader::startArrayElement ( )
virtual

Reimplemented from ariles2::read::Visitor.

Definition at line 165 of file reader_compact.cpp.

◆ startIteratedMap()

virtual bool ariles2::read::Visitor::startIteratedMap ( const  SizeLimitEnforcementType = SIZE_LIMIT_NONE,
const std::size_t  = 0,
const std::size_t  = 0 
)
inlinevirtualinherited

◆ startIteratedMapElement()

virtual bool ariles2::read::Visitor::startIteratedMapElement ( std::string &  )
inlinevirtualinherited

◆ startMap() [1/2]

void ariles2::ns_msgpack_compact::Reader::startMap ( const SizeLimitEnforcementType  limit_type = SIZE_LIMIT_NONE,
const std::size_t  min = 0,
const std::size_t  max = 0 
)
virtual

Reimplemented from ariles2::read::Visitor.

Definition at line 117 of file reader_compact.cpp.

◆ startMap() [2/2]

template<class t_Entry >
void ariles2::read::Visitor::startMap ( t_Entry &  entry,
const Parameters parameters 
)
inlineinherited

Definition at line 194 of file read.h.

◆ startMapEntry()

bool ariles2::ns_msgpack_compact::Reader::startMapEntry ( const std::string &  child_name)
virtual

startMapEntry to the entry with the given name

Parameters
[in]child_namechild node name
Returns
true if successful.

Reimplemented from ariles2::read::Visitor.

Definition at line 124 of file reader_compact.cpp.

◆ startMatrix()

virtual void ariles2::read::Visitor::startMatrix ( std::size_t &  cols,
std::size_t &  rows,
const bool  dynamic,
const Parameters param 
)
inlinevirtualinherited

Definition at line 311 of file read.h.

◆ startMatrixElement()

virtual void ariles2::read::Visitor::startMatrixElement ( )
inlinevirtualinherited

Definition at line 355 of file read.h.

◆ startMatrixRow()

virtual void ariles2::read::Visitor::startMatrixRow ( const std::size_t  row_index,
const std::size_t  cols,
const Parameters param 
)
inlinevirtualinherited

Definition at line 346 of file read.h.

◆ startPointer()

bool ariles2::read::Visitor::startPointer ( const Parameters param)
inlineinherited

Definition at line 252 of file read.h.

◆ startRoot() [1/2]

virtual bool ariles2::read::Visitor::startRoot ( const std::string &  name)
inlineprotectedvirtualinherited

◆ startRoot() [2/2]

bool ariles2::ns_msgpack_compact::Reader::startRoot ( const std::vector< std::string > &  )
inlinevirtual

Reimplemented from ariles2::read::Visitor.

Definition at line 64 of file reader_compact.h.

◆ startVector()

virtual std::size_t ariles2::read::Visitor::startVector ( )
inlinevirtualinherited

Definition at line 293 of file read.h.

◆ startVectorElement()

virtual void ariles2::read::Visitor::startVectorElement ( )
inlinevirtualinherited

Definition at line 297 of file read.h.

◆ visit()

template<class t_Entry , class t_Subtree >
ARILES2_BASIC_TYPES_LIST void ariles2::read::Visitor::visit ( t_Entry &  entry,
const t_Subtree &  subtree,
const Parameters param 
)
inlineinherited

Definition at line 423 of file read.h.

◆ visitArrayElement()

template<typename t_Element >
void ariles2::read::Visitor::visitArrayElement ( t_Element &  element,
const Parameters param 
)
inlineinherited

Definition at line 489 of file read.h.

◆ visitMapEntry()

template<class t_Entry >
bool ariles2::read::Visitor::visitMapEntry ( t_Entry &  entry,
const std::string &  name,
const Parameters param,
const bool  override_missing_entries_locally = false 
)
inlineinherited

Definition at line 455 of file read.h.

◆ visitMatrixElement()

template<typename t_Element >
void ariles2::read::Visitor::visitMatrixElement ( t_Element &  element,
const Parameters  
)
inlineinherited

Definition at line 511 of file read.h.

◆ visitVectorElement()

template<typename t_Element >
void ariles2::read::Visitor::visitVectorElement ( t_Element &  element,
const Parameters  
)
inlineinherited

Definition at line 500 of file read.h.

Member Data Documentation

◆ impl_

Definition at line 128 of file serialization.h.


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