VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
propertyUtils.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <boost/optional.hpp>
15 #include <vrfutil/rwTypes.h>
20 
24 inline const DtReaderWriter* findPropertyRw(const DtReaderWriter& properties, const DtString& propertyName);
25 inline DtReaderWriter* findPropertyRw(DtReaderWriter& properties, const DtString& propertyName);
27 
30 inline const DtReaderWriter* findVariableBindingValueRw(const DtReaderWriter& properties, const DtString& propertyName);
31 inline DtReaderWriter* findVariableBindingValueRw(DtReaderWriter& properties, const DtString& propertyName);
33 
38 template <typename RwType>
40  DtRwVariableBindings &variableBindings,
41  DtRwVariableBindings &defaultBindings,
42  const DtString& variableName);
43 
48 template <typename SpecificRwType>
49 const SpecificRwType* findProperty(const DtReaderWriter& properties, const DtString& propertyName);
50 template <typename SpecificRwType>
51 SpecificRwType* findProperty(DtReaderWriter& properties, const DtString& propertyName);
53 
56 template <typename SpecificRwType>
57 const SpecificRwType* findTypedProperty(const DtReaderWriter& properties, const DtString& propertyName);
58 template <typename SpecificRwType>
59 SpecificRwType* findTypedProperty(DtReaderWriter& properties, const DtString& propertyName);
61 
67 template <typename SpecificRwType>
68 SpecificRwType* addProperty(DtReaderWriter& properties, const DtString& propertyName);
70 
80 template <typename T>
81 boost::optional<T> getPropertyValue(const DtReaderWriter* prop);
82 
86 template <typename T>
87 boost::optional<T> findPropertyValue(const DtReaderWriter& properties, const DtString& propertyName);
88 
93 template <typename T>
94 void setPropertyValue(DtReaderWriter* prop, T val);
95 
101 template <typename T>
102 bool findAndSetPropertyValue(DtReaderWriter& properties, const DtString& propertyName, T val);
103 
106 template <typename T>
107 void setListProperty(DtReaderWriter* prop, const std::list<T>& l);
108 template <typename T>
109 void setListProperty(DtReaderWriter* prop, const std::vector<T>& l);
111 
119 template <typename T>
120 bool findAndSetListProperty(DtReaderWriter& properties, const DtString& propertyName, const std::list<T>& l);
121 template <typename T>
122 bool findAndSetListProperty(DtReaderWriter& properties, const DtString& propertyName, const std::vector<T>& l);
124 
126 template <typename K, typename T>
127 void setMapProperty(DtReaderWriter* prop, const std::map<K, T>& l);
128 
136 template <typename K, typename T>
137 bool findAndSetMapProperty(DtReaderWriter& properties, const DtString& propertyName, const std::map<K, T>& m);
138 
140 template <typename T>
141 boost::optional<T> findVariableBindingValue(const DtReaderWriter& properties, const DtString& propertyName);
142 
144 template <typename T>
145 boost::optional<T> findVariableBindingValue(const DtReaderWriter& properties, const DtReaderWriter& defaultProperties,
146  const DtString& propertyName);
147 
151 inline const DtReaderWriter* findMapItemRw(const DtRwPropertiesMap& propertiesMap, const DtString& itemName);
152 inline DtReaderWriter* findMapItemRw(DtRwPropertiesMap& propertiesMap, const DtString& itemName);
154 
159 template <typename SpecificRwType>
160 const SpecificRwType* findMapItem(const DtRwPropertiesMap& propertiesMap, const DtString& itemName);
161 template <typename SpecificRwType>
162 SpecificRwType* findMapItem(DtRwPropertiesMap& propertiesMap, const DtString& itemName);
164 
165 
166 
167 #include "propertyUtils.inl"
168 

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)