41#ifndef Alembic_Util_TokenMap_h
42#define Alembic_Util_TokenMap_h
44#include <Alembic/Util/Export.h>
46#include <Alembic/Util/Foundation.h>
50namespace ALEMBIC_VERSION_NS {
68 typedef std::map<std::string,std::string>
map_type;
122 char pairSeparator =
';',
123 char assignSeparator =
'=',
129 setUnique( config, pairSeparator, assignSeparator, quiet );
133 set( config, pairSeparator, assignSeparator );
156 void set(
const std::string &config,
157 char pairSeparator =
';',
158 char assignSeparator =
'=' );
171 void setUnique(
const std::string &config,
172 char pairSeparator =
';',
173 char assignSeparator =
'=',
186 std::string get(
char pairSeparator =
';',
187 char assignSeparator =
'=',
188 bool check =
false )
const;
193 void clear() { m_map.clear(); }
201 size_t size()
const {
return m_map.size(); }
207 return ( m_map.count( token ) > 0 );
213 std::string
value(
const std::string &token )
const
216 if ( fiter != m_map.end() )
218 return (*fiter).second;
231 return value( token );
240 const std::string &valueStr )
242 m_map[keyStr] = valueStr;
300 return m_map == iOther.m_map;
315using namespace ALEMBIC_VERSION_NS;
Header file containing class definition for class Alembic::Util::Exception.
A wrapper around std::map that serializes and deserializes the map into a doubly-tokenized string,...
Definition TokenMap.h:61
reverse_iterator rend()
same as std::map rend Returns an reverse_iterator corresponding to the reverse end of the map.
Definition TokenMap.h:285
map_type::const_iterator const_iterator
Definition TokenMap.h:89
map_type::const_reverse_iterator const_reverse_iterator
Definition TokenMap.h:97
size_t size() const
This function returns the number of pairs. ...
Definition TokenMap.h:201
map_type::reverse_iterator reverse_iterator
Definition TokenMap.h:93
bool tokenExists(const std::string &token) const
This function returns whether the map contains an entry for a particular token.
Definition TokenMap.h:205
void set(const std::string &config, char pairSeparator=';', char assignSeparator='=')
This function sets the token/value pairs in the map by deserializing them from a doubly-delimited str...
Definition TokenMap.cpp:49
map_type::reference reference
Definition TokenMap.h:101
bool exactMatch(const TokenMap &iOther) const
Definition TokenMap.h:298
const_reverse_iterator rend() const
same as std::map rend const Returns an const_reverse_iterator corresponding to the end of the map.
Definition TokenMap.h:290
const_iterator begin() const
same as std::map begin const Returns a const_iterator corresponding to the beginning of the map or th...
Definition TokenMap.h:257
TokenMap(const std::string &config, char pairSeparator=';', char assignSeparator='=', bool unique=false, bool quiet=true)
Explicit constructor Map is initialized from given string, using the delimiter scheme as presented....
Definition TokenMap.h:121
map_type::iterator iterator
Definition TokenMap.h:85
map_type::const_reference const_reference
Definition TokenMap.h:105
std::map< std::string, std::string > map_type
Definition TokenMap.h:68
TokenMap()
Default constructor Map is initialized with no entries. Values can be added using The set and setUniq...
Definition TokenMap.h:113
iterator end()
same as std::map end Returns an iterator corresponding to the end of the map.
Definition TokenMap.h:261
void setValue(const std::string &keyStr, const std::string &valueStr)
This function sets the value of a token. It will either add a new token-value pair if the map does no...
Definition TokenMap.h:239
const_reverse_iterator rbegin() const
same as std::map rbegin const Returns a const_reverse_iterator corresponding to the beginning of the ...
Definition TokenMap.h:280
reverse_iterator rbegin()
same as std::map rbegin Returns an reverse_iterator corresponding to the reverse_beginning of the map...
Definition TokenMap.h:275
std::string value(const std::string &token) const
This function returns the string value associated with a particular token, or the empty string "" if ...
Definition TokenMap.h:213
const_iterator end() const
same as std::map end const Returns an const_iterator corresponding to the end of the map.
Definition TokenMap.h:265
map_type::value_type value_type
Definition TokenMap.h:81
void setUnique(const std::string &config, char pairSeparator=';', char assignSeparator='=', bool quiet=true)
This function sets only unique (not already stored) token/value pairs by deserializing them from a do...
Definition TokenMap.cpp:81
iterator begin()
same as std::map begin Returns an iterator corresponding to the beginning of the map or the end of th...
Definition TokenMap.h:252
std::string operator[](const std::string &token) const
This function is a shorthand for value It will not return a modifiable entry. To modify,...
Definition TokenMap.h:229
std::string data_type
Definition TokenMap.h:77
map_type::key_type key_type
Definition TokenMap.h:72
Alembic namespace ...
Definition ArchiveInfo.cpp:39