Data Structures | Typedefs | Functions
attributes.hh File Reference
#include <mia/core/msgstream.hh>
#include <mia/core/errormacro.hh>
#include <map>
#include <memory>
#include <string>
#include <cstring>
#include <vector>
#include <iostream>
#include <sstream>
#include <stdexcept>
#include <boost/any.hpp>
#include <boost/ref.hpp>
#include <boost/lexical_cast.hpp>
#include <mia/core/attributetype.hh>
Include dependency graph for attributes.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  attribute_type< CAttributeMap >
 
class  CAttribute
 The class of all attributes of data that is considered to ve meta-data. More...
 
class  CAttributedData
 A collection of attributes. More...
 
class  CAttrTranslator
 A class to translate an attribute from a string. More...
 
class  CStringAttrTranslatorMap
 A singelton class to translate strings to attributes based on keys. More...
 
class  TAttribute< T >
 Class of an attribute that holds data of type T. More...
 
class  TTranslator< T >
 Generic string vs. attribute translator singleton. More...
 

Typedefs

typedef TAttribute< CAttributeMapCAttributeList
 providing the possibility to nest attribute lists More...
 
typedef std::map< std::string, PAttributeCAttributeMap
 A name:attribute map. More...
 
typedef TTranslator< bool > CBitTranslator
 
typedef TAttribute< double > CDoubleAttribute
 a double attribute More...
 
typedef TTranslator< double > CDoubleTranslator
 
typedef TAttribute< float > CFloatAttribute
 a float attribute More...
 
typedef TTranslator< float > CFloatTranslator
 
typedef TAttribute< int > CIntAttribute
 an integer attribute More...
 
typedef TTranslator< signed char > CSBTranslator
 
typedef TTranslator< signed int > CSITranslator
 
typedef TTranslator< signed long > CSLTranslator
 
typedef TTranslator< signed short > CSSTranslator
 
typedef TAttribute< std::string > CStringAttribute
 a string attribute More...
 
typedef TTranslator< unsigned char > CUBTranslator
 
typedef TTranslator< unsigned int > CUITranslator
 
typedef TTranslator< unsigned long > CULTranslator
 
typedef TTranslator< unsigned short > CUSTranslator
 
typedef TTranslator< std::vector< bool > > CVBitTranslator
 
typedef TAttribute< std::vector< double > > CVDoubleAttribute
 a vector of doubles attribute More...
 
typedef TTranslator< std::vector< double > > CVDoubleTranslator
 
typedef TAttribute< std::vector< float > > CVFloatAttribute
 
typedef TTranslator< std::vector< float > > CVFloatTranslator
 
typedef TAttribute< std::vector< int > > CVIntAttribute
 a vector of integers attribute More...
 
typedef TTranslator< std::vector< signed char > > CVSBTranslator
 
typedef TTranslator< std::vector< signed int > > CVSITranslator
 
typedef TTranslator< std::vector< signed long > > CVSLTranslator
 
typedef TTranslator< std::vector< signed short > > CVSSTranslator
 
typedef TAttribute< std::vector< std::string > > CVStringAttribute
 a vector of strings attribute More...
 
typedef TTranslator< std::vector< unsigned char > > CVUBTranslator
 
typedef TTranslator< std::vector< unsigned int > > CVUITranslator
 
typedef TTranslator< std::vector< unsigned long > > CVULTranslator
 
typedef TTranslator< std::vector< unsigned short > > CVUSTranslator
 
typedef std::shared_ptr< CAttributePAttribute
 define the shared pointer wrapped attribute pointer More...
 
typedef std::shared_ptr< CAttributeMapPAttributeMap
 another pointer-usage easy maker More...
 

Functions

template<typename T >
void EXPORT_CORE add_attribute (CAttributeMap &attributes, const std::string &key, T value)
 
template<>
void EXPORT_CORE add_attribute (CAttributeMap &attributes, const std::string &key, const char *value)
 
template<typename T >
T EXPORT_CORE get_attribute_as (const CAttribute &attr)
 
std::ostream & operator<< (std::ostream &os, const CAttribute &attr)
 
EXPORT_CORE std::ostream & operator<< (std::ostream &os, const CAttributeMap &data)
 Facility to write an attribute map to a stream. More...
 
std::ostream & operator<< (std::ostream &os, const CAttributedData &data)
 
bool operator== (const CAttribute &a, const CAttribute &b)
 
EXPORT_CORE bool operator== (const CAttributeMap &am, const CAttributeMap &bm)
 Compare two attribute data instances a and b. More...
 

Typedef Documentation

typedef TTranslator<bool> CBitTranslator

Definition at line 784 of file attributes.hh.

typedef TTranslator<double> CDoubleTranslator

Definition at line 752 of file attributes.hh.

typedef TTranslator<float> CFloatTranslator

Definition at line 755 of file attributes.hh.

typedef TTranslator<signed char> CSBTranslator

Definition at line 781 of file attributes.hh.

typedef TTranslator<signed int> CSITranslator

Definition at line 769 of file attributes.hh.

typedef TTranslator<signed long> CSLTranslator

Definition at line 762 of file attributes.hh.

typedef TTranslator<signed short> CSSTranslator

Definition at line 775 of file attributes.hh.

typedef TTranslator<unsigned char> CUBTranslator

Definition at line 778 of file attributes.hh.

typedef TTranslator<unsigned int> CUITranslator

Definition at line 766 of file attributes.hh.

typedef TTranslator<unsigned long> CULTranslator

Definition at line 759 of file attributes.hh.

typedef TTranslator<unsigned short> CUSTranslator

Definition at line 772 of file attributes.hh.

typedef TTranslator<std::vector<bool> > CVBitTranslator

Definition at line 785 of file attributes.hh.

typedef TTranslator<std::vector<double> > CVDoubleTranslator

Definition at line 753 of file attributes.hh.

typedef TTranslator<std::vector<float> > CVFloatTranslator

Definition at line 756 of file attributes.hh.

typedef TTranslator<std::vector<signed char> > CVSBTranslator

Definition at line 782 of file attributes.hh.

typedef TTranslator<std::vector<signed int> > CVSITranslator

Definition at line 770 of file attributes.hh.

typedef TTranslator<std::vector<signed long> > CVSLTranslator

Definition at line 763 of file attributes.hh.

typedef TTranslator<std::vector<signed short> > CVSSTranslator

Definition at line 776 of file attributes.hh.

typedef TTranslator<std::vector<unsigned char> > CVUBTranslator

Definition at line 779 of file attributes.hh.

typedef TTranslator<std::vector<unsigned int> > CVUITranslator

Definition at line 767 of file attributes.hh.

typedef TTranslator<std::vector<unsigned long> > CVULTranslator

Definition at line 760 of file attributes.hh.

typedef TTranslator<std::vector<unsigned short> > CVUSTranslator

Definition at line 773 of file attributes.hh.

typedef std::shared_ptr<CAttribute > PAttribute

define the shared pointer wrapped attribute pointer

Definition at line 98 of file attributes.hh.

Function Documentation

template<>
void EXPORT_CORE add_attribute ( CAttributeMap attributes,
const std::string &  key,
const char *  value 
)
inline
std::ostream& operator<< ( std::ostream &  os,
const CAttribute attr 
)
inline

Definition at line 86 of file attributes.hh.

References CAttribute::as_string().

std::ostream& operator<< ( std::ostream &  os,
const CAttributedData data 
)
inline

Definition at line 381 of file attributes.hh.

References CAttributedData::print().

bool operator== ( const CAttribute a,
const CAttribute b 
)
inline

Definition at line 91 of file attributes.hh.

References CAttribute::is_equal().