| 231 | | /*********************************** Non-ptr code ********************************/ |
|---|
| 232 | | void GeoMultiPropertyDataBase::pushToIData(const UInt8& value) |
|---|
| 233 | | { |
|---|
| 234 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 235 | | _mfIData.push_back(value); |
|---|
| 236 | | } |
|---|
| 237 | | |
|---|
| 238 | | void GeoMultiPropertyDataBase::insertIntoIData(UInt32 uiIndex, |
|---|
| 239 | | const UInt8& value ) |
|---|
| 240 | | { |
|---|
| 241 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 242 | | |
|---|
| 243 | | MFUInt8::iterator fieldIt = _mfIData.begin(); |
|---|
| 244 | | |
|---|
| 245 | | fieldIt += uiIndex; |
|---|
| 246 | | |
|---|
| 247 | | _mfIData.insert(fieldIt, value); |
|---|
| 248 | | } |
|---|
| 249 | | |
|---|
| 250 | | void GeoMultiPropertyDataBase::replaceInIData(UInt32 uiIndex, |
|---|
| 251 | | const UInt8& value ) |
|---|
| 252 | | { |
|---|
| 253 | | if(uiIndex >= _mfIData.size()) |
|---|
| 254 | | return; |
|---|
| 255 | | |
|---|
| 256 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 257 | | |
|---|
| 258 | | _mfIData[uiIndex] = value; |
|---|
| 259 | | } |
|---|
| 260 | | |
|---|
| 261 | | void GeoMultiPropertyDataBase::replaceInIData(const UInt8& pOldElem, |
|---|
| 262 | | const UInt8& pNewElem) |
|---|
| 263 | | { |
|---|
| 264 | | Int32 elemIdx = _mfIData.findIndex(pOldElem); |
|---|
| 265 | | |
|---|
| 266 | | if(elemIdx != -1) |
|---|
| 267 | | { |
|---|
| 268 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 269 | | |
|---|
| 270 | | MFUInt8::iterator fieldIt = _mfIData.begin(); |
|---|
| 271 | | |
|---|
| 272 | | fieldIt += elemIdx; |
|---|
| 273 | | |
|---|
| 274 | | (*fieldIt) = pNewElem; |
|---|
| 275 | | } |
|---|
| 276 | | } |
|---|
| 277 | | |
|---|
| 278 | | void GeoMultiPropertyDataBase::removeFromIData(UInt32 uiIndex) |
|---|
| 279 | | { |
|---|
| 280 | | if(uiIndex < _mfIData.size()) |
|---|
| 281 | | { |
|---|
| 282 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 283 | | |
|---|
| 284 | | MFUInt8::iterator fieldIt = _mfIData.begin(); |
|---|
| 285 | | |
|---|
| 286 | | fieldIt += uiIndex; |
|---|
| 287 | | _mfIData.erase(fieldIt); |
|---|
| 288 | | } |
|---|
| 289 | | } |
|---|
| 290 | | |
|---|
| 291 | | void GeoMultiPropertyDataBase::removeFromIData(const UInt8& value) |
|---|
| 292 | | { |
|---|
| 293 | | Int32 iElemIdx = _mfIData.findIndex(value); |
|---|
| 294 | | |
|---|
| 295 | | if(iElemIdx != -1) |
|---|
| 296 | | { |
|---|
| 297 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 298 | | |
|---|
| 299 | | MFUInt8::iterator fieldIt = _mfIData.begin(); |
|---|
| 300 | | |
|---|
| 301 | | fieldIt += iElemIdx; |
|---|
| 302 | | |
|---|
| 303 | | _mfIData.erase(fieldIt); |
|---|
| 304 | | } |
|---|
| 305 | | } |
|---|
| 306 | | |
|---|
| 307 | | void GeoMultiPropertyDataBase::clearIData(void) |
|---|
| 308 | | { |
|---|
| 309 | | editMField(IDataFieldMask, _mfIData); |
|---|
| 310 | | |
|---|
| 311 | | _mfIData.clear(); |
|---|
| 312 | | } |
|---|