FiReS  0.2.0
FiReS - Filter, Retrieval and Search
fires::PropertyManager Class Reference
+ Collaboration diagram for fires::PropertyManager:

Classes

struct  TPropertyInfo
 

Static Public Member Functions

template<typename T >
static void registerProperty (fires::Object *obj, const std::string &label, T value, typename std::enable_if< std::is_arithmetic< T >::value >::type *=0)
 
template<typename T >
static void registerProperty (const std::string &label, T, typename std::enable_if< std::is_arithmetic< T >::value >::type *=0)
 Specialization for scalars.
 
template<typename T >
static void registerProperty (fires::Object *obj, const std::string &label, T value, typename std::enable_if< boost::spirit::traits::is_string< T >::value >::type *=0)
 
template<typename T >
static void registerProperty (const std::string &label, T, typename std::enable_if< boost::spirit::traits::is_string< T >::value >::type *=0)
 Specialization for strings.
 
template<typename T >
static void registerProperty (Object *obj, const std::string &label, T value, const std::map< T, std::string > &enumToString=std::map< T, std::string >(), typename std::enable_if< std::is_enum< T >::value >::type *=0)
 
template<typename T >
static void registerProperty (const std::string &label, T, const std::map< T, std::string > &enumToString=std::map< T, std::string >(), typename std::enable_if< std::is_enum< T >::value >::type *=0)
 Specialization for scalars.
 
template<typename T >
static void registerProperty (fires::Object *obj, const std::string &label, T value, typename std::enable_if< std::is_class< T >::value &&!boost::spirit::traits::is_string< T >::value >::type *=0)
 
template<typename T >
static void registerProperty (const std::string &label, T, typename std::enable_if< std::is_class< T >::value &&!boost::spirit::traits::is_string< T >::value >::type *=0)
 
static void addType (const std::type_index typeIdx, PropertyCaster *caster, PropertyAggregator *aggregator, PropertySorter *sorter)
 
static PropertySortergetSorter (PropertyGID propertyGID)
 
static PropertySortergetSorter (const std::string &label)
 
static FiltergetFilter (PropertyGID propertyGID)
 
static FiltergetFilter (const std::string &label)
 
static PropertyAggregatorgetAggregator (PropertyGID propertyGID)
 
static PropertyAggregatorgetAggregator (const std::string &label)
 
static PropertyCastergetPropertyCaster (PropertyGID propertyGID)
 
static PropertyCastergetPropertyCaster (const std::string &label)
 
static void setTypePropertyCaster (std::type_index typeIndex, PropertyCaster *caster)
 
static void setTypeAgregator (std::type_index typeIndex, PropertyAggregator *agregator)
 
static void setTypeSorter (std::type_index typeIndex, PropertySorter *sorter)
 
static void setFilterRange (Filter *filter, int minValue, int maxValue)
 
static void clear (void)
 

Static Protected Attributes

static std::map< PropertyGID, TPropertyInfo_properties
 
static std::map< std::type_index, PropertySorter * > _sorters
 
static std::map< std::type_index, PropertyAggregator * > _aggregators
 
static std::map< std::type_index, PropertyCaster * > _casters
 

Detailed Description

Definition at line 39 of file PropertyManager.h.


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