Ariles
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | List of all members
ariles::ns_array::GenericWriter< t_NameValuePair > Class Template Reference

Detailed Description

template<class t_NameValuePair>
class ariles::ns_array::GenericWriter< t_NameValuePair >

Configuration writer class.

Definition at line 52 of file writer.h.

#include <writer.h>

Inheritance diagram for ariles::ns_array::GenericWriter< t_NameValuePair >:
ariles::write::Visitor ariles::serialization::Base ariles::visitor::Base< ariles::ConfigurableFlags > ariles::visitor::Visitor

Public Types

typedef ariles::ConfigurableFlags Parameters
 

Public Member Functions

 GenericWriter (const std::size_t reserve=0)
 
 GenericWriter (std::vector< t_NameValuePair > *name_value_pairs, const std::size_t reserve=0)
 
const serialization::FeaturesgetSerializationFeatures () const
 
void flush ()
 Flush the configuration to the output. More...
 
void reset (const bool initialize_structure=true)
 
virtual void descend (const std::string &map_name)
 Starts a nested map in the configuration file. More...
 
virtual void ascend ()
 
virtual void startMap (const std::size_t num_entries)
 Starts a nested map in the configuration file. More...
 
virtual void endMap ()
 Ends a nested map in the configuration file. More...
 
virtual void startArray (const std::size_t size, const bool compact=false)
 
virtual void shiftArray ()
 
virtual void endArray ()
 
 ARILES_MACRO_SUBSTITUTE (ARILES_BASIC_NUMERIC_TYPES_LIST) void writeElement(const std
 
virtual void startMatrix (const bool compact=false)
 
virtual void startMatrixRow ()
 
virtual void endMatrixRow ()
 
virtual void endMatrix ()
 
virtual void startRoot (const std::string &name)
 
virtual void endRoot (const std::string &name)
 
template<typename t_Entry >
ARILES_BASIC_TYPES_LIST void start (const t_Entry &entry, const std::string &entry_name, const Parameters &param)
 
template<typename t_Entry >
void operator() (const t_Entry &entry, const std::string &entry_name, const Parameters &param)
 
template<class t_Ariles >
const ParametersgetParameters (const t_Ariles &ariles_class) const
 

Static Public Member Functions

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

Public Attributes

std::vector< t_NameValuePair > * name_value_pairs_
 
std::size_t index_
 

Protected Types

typedef ariles::Node< std::string > NodeWrapper
 

Protected Member Functions

void expand ()
 
void expandReserve (const std::size_t size)
 
void clear ()
 
const ariles::ConfigurableFlagsgetDefaultParameters () const
 

Protected Attributes

std::vector< NodeWrappernode_stack_
 
std::size_t reserve_
 
std::vector< t_NameValuePair > buffer_name_value_pairs_
 
bool initialize_structure_
 

Member Typedef Documentation

◆ NodeWrapper

template<class t_NameValuePair >
typedef ariles::Node<std::string> ariles::ns_array::GenericWriter< t_NameValuePair >::NodeWrapper
protected

Definition at line 55 of file writer.h.

◆ Parameters

Definition at line 62 of file serialization.h.

Constructor & Destructor Documentation

◆ GenericWriter() [1/2]

template<class t_NameValuePair >
ariles::ns_array::GenericWriter< t_NameValuePair >::GenericWriter ( const std::size_t  reserve = 0)
inlineexplicit

Definition at line 94 of file writer.h.

◆ GenericWriter() [2/2]

template<class t_NameValuePair >
ariles::ns_array::GenericWriter< t_NameValuePair >::GenericWriter ( std::vector< t_NameValuePair > *  name_value_pairs,
const std::size_t  reserve = 0 
)
inlineexplicit

Definition at line 106 of file writer.h.

Member Function Documentation

◆ ARILES_MACRO_SUBSTITUTE()

template<class t_NameValuePair >
ariles::ns_array::GenericWriter< t_NameValuePair >::ARILES_MACRO_SUBSTITUTE ( ARILES_BASIC_NUMERIC_TYPES_LIST  ) const
inline

Definition at line 246 of file writer.h.

◆ ascend()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::ascend ( )
inlinevirtual

Reimplemented from ariles::write::Visitor.

Definition at line 169 of file writer.h.

◆ clear()

template<class t_NameValuePair >
void ariles::ns_array::GenericWriter< t_NameValuePair >::clear ( )
inlineprotected

Definition at line 87 of file writer.h.

◆ descend()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::descend ( const std::string &  map_name)
inlinevirtual

Starts a nested map in the configuration file.

Parameters
[in]map_namename of the map

Reimplemented from ariles::write::Visitor.

Definition at line 142 of file writer.h.

◆ endArray()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::endArray ( )
inlinevirtual

Reimplemented from ariles::write::Visitor.

Definition at line 219 of file writer.h.

◆ endMap()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::endMap ( )
inlinevirtual

Ends a nested map in the configuration file.

Reimplemented from ariles::write::Visitor.

Definition at line 186 of file writer.h.

◆ endMatrix()

virtual void ariles::write::Visitor::endMatrix ( )
inlinevirtualinherited

Reimplemented in ariles::ns_octave::Writer.

Definition at line 99 of file write.h.

◆ endMatrixRow()

virtual void ariles::write::Visitor::endMatrixRow ( )
inlinevirtualinherited

Reimplemented in ariles::ns_octave::Writer.

Definition at line 96 of file write.h.

◆ endRoot()

virtual void ariles::write::Visitor::endRoot ( const std::string &  name)
inlinevirtualinherited

◆ expand()

template<class t_NameValuePair >
void ariles::ns_array::GenericWriter< t_NameValuePair >::expand ( )
inlineprotected

Definition at line 73 of file writer.h.

◆ expandReserve()

template<class t_NameValuePair >
void ariles::ns_array::GenericWriter< t_NameValuePair >::expandReserve ( const std::size_t  size)
inlineprotected

Definition at line 81 of file writer.h.

◆ flush()

template<class t_NameValuePair >
void ariles::ns_array::GenericWriter< t_NameValuePair >::flush ( )
inlinevirtual

Flush the configuration to the output.

Implements ariles::write::Visitor.

Definition at line 125 of file writer.h.

◆ getDefaultParameters()

const ariles::ConfigurableFlags & ariles::visitor::Base< ariles::ConfigurableFlags >::getDefaultParameters ( ) const
inlineprotectedinherited

Definition at line 33 of file common.h.

◆ getParameters()

template<class t_Ariles >
const Parameters& ariles::serialization::Base::getParameters ( const t_Ariles &  ariles_class) const
inlineinherited

Definition at line 68 of file serialization.h.

◆ getSerializationFeatures()

template<class t_NameValuePair >
const serialization::Features& ariles::ns_array::GenericWriter< t_NameValuePair >::getSerializationFeatures ( ) const
inlinevirtual

Implements ariles::serialization::Base.

Definition at line 118 of file writer.h.

◆ openFile()

static void ariles::write::Visitor::openFile ( std::ofstream &  config_ofs,
const std::string &  file_name 
)
inlinestaticinherited

open configuration file

Parameters
[out]config_ofs
[in]file_name

Definition at line 33 of file write.h.

◆ operator()()

template<typename t_Entry >
void ariles::write::Visitor::operator() ( const t_Entry &  entry,
const std::string &  entry_name,
const Parameters param 
)
inlineinherited

Definition at line 141 of file write.h.

◆ reset()

template<class t_NameValuePair >
void ariles::ns_array::GenericWriter< t_NameValuePair >::reset ( const bool  initialize_structure = true)
inline

Definition at line 130 of file writer.h.

◆ shiftArray()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::shiftArray ( )
inlinevirtual

Reimplemented from ariles::write::Visitor.

Definition at line 210 of file writer.h.

◆ start()

template<typename t_Entry >
ARILES_BASIC_TYPES_LIST void ariles::write::Visitor::start ( const t_Entry &  entry,
const std::string &  entry_name,
const Parameters param 
)
inlineinherited

Definition at line 130 of file write.h.

◆ startArray()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::startArray ( const std::size_t  size,
const bool  compact = false 
)
inlinevirtual

Implements ariles::write::Visitor.

Definition at line 191 of file writer.h.

◆ startMap()

template<class t_NameValuePair >
virtual void ariles::ns_array::GenericWriter< t_NameValuePair >::startMap ( const std::size_t  num_entries)
inlinevirtual

Starts a nested map in the configuration file.

Parameters
[in]num_entriesnumber of child entries

Reimplemented from ariles::write::Visitor.

Definition at line 178 of file writer.h.

◆ startMatrix()

virtual void ariles::write::Visitor::startMatrix ( const bool  compact = false)
inlinevirtualinherited

Reimplemented in ariles::ns_octave::Writer.

Definition at line 89 of file write.h.

◆ startMatrixRow()

virtual void ariles::write::Visitor::startMatrixRow ( )
inlinevirtualinherited

Reimplemented in ariles::ns_octave::Writer.

Definition at line 93 of file write.h.

◆ startRoot()

virtual void ariles::write::Visitor::startRoot ( const std::string &  name)
inlinevirtualinherited

Member Data Documentation

◆ buffer_name_value_pairs_

template<class t_NameValuePair >
std::vector<t_NameValuePair> ariles::ns_array::GenericWriter< t_NameValuePair >::buffer_name_value_pairs_
protected

Definition at line 62 of file writer.h.

◆ index_

template<class t_NameValuePair >
std::size_t ariles::ns_array::GenericWriter< t_NameValuePair >::index_

Definition at line 69 of file writer.h.

◆ initialize_structure_

template<class t_NameValuePair >
bool ariles::ns_array::GenericWriter< t_NameValuePair >::initialize_structure_
protected

Definition at line 64 of file writer.h.

◆ name_value_pairs_

template<class t_NameValuePair >
std::vector<t_NameValuePair>* ariles::ns_array::GenericWriter< t_NameValuePair >::name_value_pairs_

Definition at line 68 of file writer.h.

◆ node_stack_

template<class t_NameValuePair >
std::vector<NodeWrapper> ariles::ns_array::GenericWriter< t_NameValuePair >::node_stack_
protected

Definition at line 59 of file writer.h.

◆ reserve_

template<class t_NameValuePair >
std::size_t ariles::ns_array::GenericWriter< t_NameValuePair >::reserve_
protected

Definition at line 60 of file writer.h.


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