This file contains all the public interface of ViennaData. More...
#include "forwards.h"
#include "viennadata/data_container.hpp"
#include "viennadata/key_value_registration.hpp"
#include "viennadata/config/default_data_for_key.hpp"
Go to the source code of this file.
Data Structures | |
class | data_accessor_with_key< KeyType, DataType > |
A proxy class for accessing data with key type and key object dispatch. Only used internally in ViennaData. More... | |
class | data_accessor_no_key< KeyType, DataType > |
A proxy class for accessing data with key type dispatch, but no key object dispatch. Only used internally in ViennaData. More... | |
class | data_erasor_with_key< KeyType, DataType > |
A proxy class for erasing data. Only used internally in ViennaData. More... | |
class | data_erasor_with_key< KeyType, all > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_erasor_with_key< all, DataType > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_erasor_with_key< all, all > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_erasor_no_key< KeyType, DataType > |
A proxy class for erasing data. Only used internally in ViennaData. More... | |
class | data_erasor_no_key< KeyType, all > |
Specialization for erasing all data for a particular KeyType by providing viennadata::all for the DataType. More... | |
class | data_erasor_no_key< all, DataType > |
Specialization for erasing all data of a particular DataType by providing viennadata::all for the KeyType. More... | |
class | data_erasor_no_key< all, all > |
Specialization for erasing all data using viennadata::all. More... | |
class | data_copy_with_key< KeyType, DataType > |
A proxy class for copying data associated with a particular key from one object to another. Only used internally in ViennaData. More... | |
class | data_copy_with_key< KeyType, all > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_copy_with_key< all, DataType > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_copy_with_key< all, all > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_copy_no_key< KeyType, DataType > |
A proxy class for copying data associated with a particular key type from one object to another. Only used internally in ViennaData. More... | |
class | data_copy_no_key< KeyType, all > |
Specialization for copying all data associated with a particular key type from one object to another using viennadata::all. More... | |
class | data_copy_no_key< all, DataType > |
Specialization for copying all data of a particular DataType from one object to another using viennadata::all for the KeyType. More... | |
class | data_copy_no_key< all, all > |
Specialization for copying all data from one object to another using viennadata::all. More... | |
class | data_mover_with_key< KeyType, DataType > |
A proxy class for moving data associated with a particular key from one object to another. Only used internally in ViennaData. More... | |
class | data_mover_with_key< KeyType, all > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_mover_with_key< all, DataType > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_mover_with_key< all, all > |
Specialization that prevents supplying a key argument when using viennadata::all. More... | |
class | data_mover_no_key< KeyType, DataType > |
A proxy class for moving data associated with a particular key type from one object to another. Only used internally in ViennaData. More... | |
class | data_reservation_proxy< KeyType, DataType > |
A proxy class for reserving memory needed for storing data associated with a particular key type. Only used internally in ViennaData. More... | |
class | data_find_proxy_with_key< KeyType, DataType > |
A proxy class for finding data associated with a particular key. Only used internally in ViennaData. More... | |
class | data_find_proxy_no_key< KeyType, DataType > |
A proxy class for finding data associated with a particular key. Only used internally in ViennaData. More... | |
Namespaces | |
namespace | viennadata |
Functions | |
template<typename KeyType , typename DataType > | |
data_accessor_with_key < KeyType, DataType > | access (KeyType const &key) |
The main access function within ViennaData. Allows to access data stored with a particular key, using full dispatch (type and object). | |
template<typename KeyType > | |
data_accessor_with_key < KeyType, typename config::default_data_for_key < KeyType >::type > | access (KeyType const &key) |
The main access function within ViennaData using a default data type. Allows to access data stored with a particular key, using full dispatch (type and object). | |
template<typename KeyType , typename DataType > | |
data_accessor_no_key< KeyType, DataType > | access () |
The main access function within ViennaData. Allows to access data stored with a particular key, using type based dispatch. | |
template<typename KeyType > | |
data_accessor_no_key< KeyType, typename config::default_data_for_key < KeyType >::type > | access () |
The main access function within ViennaData, using a default data type. | |
template<typename KeyType , typename DataType > | |
data_erasor_with_key< KeyType, DataType > | erase (KeyType const &key) |
Erase data associated with key 'key'. The object is obtained via a proxy class. | |
template<typename KeyType > | |
data_erasor_with_key< KeyType, typename config::default_data_for_key < KeyType >::type > | erase (KeyType const &key) |
Erase data associated with key 'key' for the default data type. The object is obtained via a proxy class. | |
template<typename KeyType , typename DataType > | |
data_erasor_no_key< KeyType, DataType > | erase () |
Erase all data associated with keys of 'KeyType'. | |
template<typename KeyType > | |
data_erasor_no_key< KeyType, typename config::default_data_for_key < KeyType >::type > | erase () |
Erase all data associated with keys of 'KeyType' using a default data type. | |
template<typename KeyType , typename DataType > | |
data_copy_with_key< KeyType, DataType > | copy (KeyType const &key) |
Copies data associated with key 'key' from one object to another. | |
template<typename KeyType > | |
data_copy_with_key< KeyType, typename config::default_data_for_key < KeyType >::type > | copy (KeyType const &key) |
Copies data associated with key 'key' from one object to another using a default data type. | |
template<typename KeyType , typename DataType > | |
data_copy_no_key< KeyType, DataType > | copy () |
Copies data associated with all keys of type 'KeyType' from one object to another. | |
template<typename KeyType > | |
data_copy_no_key< KeyType, typename config::default_data_for_key < KeyType >::type > | copy () |
Copies data associated with all keys of type 'KeyType' from one object to another using a default data type. | |
template<typename KeyType , typename DataType > | |
data_mover_with_key< KeyType, DataType > | move (KeyType const &key) |
Moves data associated with key 'key' from one object to another. | |
template<typename KeyType > | |
data_mover_with_key< KeyType, typename config::default_data_for_key < KeyType >::type > | move (KeyType const &key) |
Moves data associated with key 'key' from one object to another using a default data type specified for the key type. | |
template<typename KeyType , typename DataType > | |
data_mover_no_key< KeyType, DataType > | move () |
Moves data associated with all keys of type 'KeyType' from one object to another. | |
template<typename KeyType > | |
data_mover_no_key< KeyType, typename config::default_data_for_key < KeyType >::type > | move () |
Moves data associated with all keys of type 'KeyType' from one object to another using a default data type specified for the key type. | |
template<typename KeyType , typename DataType > | |
data_reservation_proxy < KeyType, DataType > | reserve (long num) |
Reserves memory for storing data associated with a particular key type. | |
template<typename KeyType > | |
data_reservation_proxy < KeyType, typename config::default_data_for_key < KeyType >::type > | reserve (long num) |
Reserves memory for storing data associated with a particular key type and the specified default data type. | |
template<typename KeyType , typename DataType > | |
data_find_proxy_with_key < KeyType, DataType > | find (KeyType const &key) |
Reserves memory for storing data associated with a particular key type. | |
template<typename KeyType > | |
data_find_proxy_with_key < KeyType, typename config::default_data_for_key < KeyType >::type > | find (KeyType const &key) |
Reserves memory for storing data associated with a particular key type and the specified default data type. | |
template<typename KeyType , typename DataType > | |
data_find_proxy_no_key < KeyType, DataType > | find () |
Reserves memory for storing data associated with a particular key type (key type dispatch). |
This file contains all the public interface of ViennaData.