- Timestamp:
- 12/12/07 18:00:42 (9 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/Carsten_PtrWork2/Source/Base/Field/OSGFieldTraits.inl
r1030 r1032 40 40 41 41 template <class DescT, 42 enum FieldCardinality FieldCardE, 43 enum FieldCategory FieldCatE > inline 44 FieldDescription<DescT, 45 FieldCardE, 46 FieldCatE >::FieldDescription( 42 enum FieldType::Cardinality FieldCardE> inline 43 FieldDescription<DescT, 44 FieldCardE>::FieldDescription( 47 45 const FieldType &elementType, 48 46 const Char8 *szName, 49 std::stringdocumentation,47 const std::string &documentation, 50 48 const UInt32 uiFieldId, 51 49 const BitVector vFieldMask, … … 53 51 const UInt32 uiFieldFlags, 54 52 FieldEditMethod fEditMethod, 55 FieldGetMethod fGetMethod, 56 const Char8 *defaultValue) : 53 FieldGetMethod fGetMethod ) : 57 54 58 55 Inherited(elementType, … … 64 61 uiFieldFlags, 65 62 fEditMethod, 66 fGetMethod, 67 defaultValue) 68 { 69 } 70 71 template <class DescT, 72 enum FieldCardinality FieldCardE, 73 enum FieldCategory FieldCatE > inline 74 FieldDescription<DescT, 75 FieldCardE, 76 FieldCatE >::FieldDescription( 63 fGetMethod ) 64 { 65 } 66 67 template <class DescT, 68 enum FieldType::Cardinality FieldCardE> inline 69 FieldDescription<DescT, 70 FieldCardE>::FieldDescription( 77 71 const FieldType &elementType, 78 72 const Char8 *szName, 79 std::stringdocumentation,73 const std::string &documentation, 80 74 const UInt32 uiFieldId, 81 75 const BitVector vFieldMask, … … 83 77 const UInt32 uiFieldFlags, 84 78 FieldIndexEditMethod fIndexedEditMethod, 85 FieldIndexGetMethod fIndexedGetMethod, 86 const Char8 *defaultValue ) : 79 FieldIndexGetMethod fIndexedGetMethod ) : 87 80 88 81 Inherited(elementType, … … 94 87 uiFieldFlags, 95 88 fIndexedEditMethod, 96 fIndexedGetMethod, 97 defaultValue) 98 { 99 } 100 101 template <class DescT, 102 enum FieldCardinality FieldCardE, 103 enum FieldCategory FieldCatE > inline 104 FieldDescription<DescT, 105 FieldCardE, 106 FieldCatE >::FieldDescription( 89 fIndexedGetMethod ) 90 { 91 } 92 93 template <class DescT, 94 enum FieldType::Cardinality FieldCardE> inline 95 FieldDescription<DescT, 96 FieldCardE>::FieldDescription( 107 97 const FieldDescription &source) : 108 98 … … 112 102 113 103 template <class DescT, 114 enum FieldCardinality FieldCardE, 115 enum FieldCategory FieldCatE > inline 116 FieldDescription<DescT, 117 FieldCardE, 118 FieldCatE >::~FieldDescription(void) 119 { 120 } 121 122 template <class DescT, 123 enum FieldCardinality FieldCardE, 124 enum FieldCategory FieldCatE > inline 104 enum FieldType::Cardinality FieldCardE> inline 105 FieldDescription<DescT, 106 FieldCardE>::~FieldDescription(void) 107 { 108 } 109 110 template <class DescT, 111 enum FieldType::Cardinality FieldCardE> inline 125 112 typename FieldDescription<DescT, 126 FieldCardE, 127 FieldCatE >::HandledField const * 113 FieldCardE>::HandledField const * 128 114 FieldDescription<DescT, 129 FieldCardE, 130 FieldCatE >::dcast_const(const Field *pField) const 115 FieldCardE>::dcast_const(const Field *pField) const 131 116 { 132 117 return static_cast<const HandledField *>(pField); … … 134 119 135 120 template <class DescT, 136 enum FieldCardinality FieldCardE, 137 enum FieldCategory FieldCatE > inline 121 enum FieldType::Cardinality FieldCardE> inline 138 122 typename FieldDescription<DescT, 139 FieldCardE, 140 FieldCatE >::HandledField * 123 FieldCardE>::HandledField * 141 124 FieldDescription<DescT, 142 FieldCardE, 143 FieldCatE >::dcast(Field *pField) const 125 FieldCardE>::dcast(Field *pField) const 144 126 { 145 127 return static_cast<HandledField *>(pField); … … 147 129 148 130 template <class DescT, 149 enum FieldCardinality FieldCardE, 150 enum FieldCategory FieldCatE > inline 131 enum FieldType::Cardinality FieldCardE> inline 151 132 Field *FieldDescription<DescT, 152 FieldCardE, 153 FieldCatE >::createField(void) const 154 { 155 // return new HandledField(); 156 157 FFATAL(("FieldDescription<>::createField: DISABLED - cneumann\n")); 158 return NULL; 159 } 160 161 template <class DescT, 162 enum FieldCardinality FieldCardE, 163 enum FieldCategory FieldCatE > inline 133 FieldCardE>::createField(void) const 134 { 135 return new HandledField(); 136 } 137 138 template <class DescT, 139 enum FieldType::Cardinality FieldCardE> inline 164 140 void FieldDescription<DescT, 165 FieldCardE, 166 FieldCatE >::destroyField(Field *pField) const 141 FieldCardE>::destroyField(Field *pField) const 167 142 { 168 143 HandledField *pDelField = dcast(pField); … … 172 147 173 148 template <class DescT, 174 enum FieldCardinality FieldCardE, 175 enum FieldCategory FieldCatE > inline 149 enum FieldType::Cardinality FieldCardE> inline 176 150 FieldDescriptionBase *FieldDescription<DescT, 177 FieldCardE, 178 FieldCatE >::clone(void) const 151 FieldCardE>::clone(void) const 179 152 { 180 153 return new Self(*this); … … 182 155 183 156 template <class DescT, 184 enum FieldCardinality FieldCardE, 185 enum FieldCategory FieldCatE > inline 186 GetFieldHandlePtr 187 FieldDescription<DescT, 188 FieldCardE, 189 FieldCatE >::createGetHandler(const Field *pField) 190 { 191 const HandledField *pTypedField = dcast_const(pField); 192 193 GetHandlePtr returnValue(new GetHandle(pTypedField, this)); 194 195 return returnValue; 196 } 197 198 template <class DescT, 199 enum FieldCardinality FieldCardE, 200 enum FieldCategory FieldCatE > inline 157 enum FieldType::Cardinality FieldCardE> 158 inline GetFieldHandlePtr 159 FieldDescription<DescT, 160 FieldCardE>::createGetHandler(Field const *pField) const 161 { 162 HandledField const *pTypedField = dcast_const(pField); 163 164 GetHandlePtr retVal(new GetHandle(pTypedField, this)); 165 166 return retVal; 167 } 168 169 template <class DescT, 170 enum FieldType::Cardinality FieldCardE> inline 201 171 EditFieldHandlePtr 202 172 FieldDescription<DescT, 203 FieldCardE, 204 FieldCatE >::createEditHandler(Field *pField) 173 FieldCardE>::createEditHandler(Field *pField) const 205 174 { 206 175 HandledField *pTypedField = dcast(pField); 207 208 EditHandlePtr returnValue(new EditHandle(pTypedField, this)); 209 210 return returnValue; 211 } 212 213 214 template <class DescT, 215 enum FieldCardinality FieldCardE, 216 enum FieldCategory FieldCatE > inline 176 177 EditHandlePtr retVal(new EditHandle(pTypedField, this)); 178 179 return retVal; 180 } 181 182 183 template <class DescT, 184 enum FieldType::Cardinality FieldCardE> inline 217 185 void FieldDescription<DescT, 218 FieldCardE, 219 FieldCatE >::SFieldFunctions::beginEdit( 220 HandledField *, 221 UInt32 , 222 AspectOffsetStore &) 223 { 224 } 225 226 template <class DescT, 227 enum FieldCardinality FieldCardE, 228 enum FieldCategory FieldCatE > inline 229 void FieldDescription<DescT, 230 FieldCardE, 231 FieldCatE >::MFieldFunctions::beginEdit( 232 HandledField *pField, 233 UInt32 uiAspect, 234 AspectOffsetStore &oOffsets) 235 { 236 pField->beginEdit(uiAspect, oOffsets); 237 } 238 239 240 template <class DescT, 241 enum FieldCardinality FieldCardE, 242 enum FieldCategory FieldCatE > inline 186 FieldCardE>::beginEdit(Field *pField, 187 UInt32 uiAspect, 188 AspectOffsetStore &oOffsets) 189 { 190 HandledField *pTypedField = dcast(pField); 191 192 FieldFunctions::beginEdit(pTypedField, uiAspect, oOffsets); 193 } 194 195 template <class DescT, 196 enum FieldType::Cardinality FieldCardE> inline 243 197 bool FieldDescription<DescT, 244 FieldCardE, 245 FieldCatE >::SFieldFunctions::isShared( 246 HandledField *) 247 { 248 return false; 249 } 250 251 template <class DescT, 252 enum FieldCardinality FieldCardE, 253 enum FieldCategory FieldCatE > inline 254 bool FieldDescription<DescT, 255 FieldCardE, 256 FieldCatE >::MFieldFunctions::isShared( 257 HandledField *pField) 258 { 259 return pField->isShared(); 260 } 261 262 263 264 template <class DescT, 265 enum FieldCardinality FieldCardE, 266 enum FieldCategory FieldCatE > inline 267 void FieldDescription<DescT, 268 FieldCardE, 269 FieldCatE >::beginEdit(Field *pField, 270 UInt32 uiAspect, 271 AspectOffsetStore &oOffsets) 198 FieldCardE>::isShared(Field *pField) 272 199 { 273 200 HandledField *pTypedField = dcast(pField); 274 201 275 FieldFunctions::beginEdit(pTypedField, uiAspect, oOffsets);276 }277 278 template <class DescT,279 enum FieldCardinality FieldCardE,280 enum FieldCategory FieldCatE > inline281 bool FieldDescription<DescT,282 FieldCardE,283 FieldCatE >::isShared(Field *pField)284 {285 HandledField *pTypedField = dcast(pField);286 287 202 return FieldFunctions::isShared(pTypedField); 288 203 }
