| 415 | | void GeometryBase::insertIntoProperties( UInt32 uiIndex, |
|---|
| 416 | | const GeoVectorPropertyPtr value ) |
|---|
| | 438 | void GeometryBase::removeFromProperties(UInt32 uiIndex) |
|---|
| | 439 | { |
|---|
| | 440 | if(uiIndex < _mfProperties.size()) |
|---|
| | 441 | { |
|---|
| | 442 | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| | 443 | |
|---|
| | 444 | MFUnrecChildGeoVectorPropertyPtr::iterator fieldIt = _mfProperties.begin_nc(); |
|---|
| | 445 | |
|---|
| | 446 | fieldIt += uiIndex; |
|---|
| | 447 | |
|---|
| | 448 | _mfProperties.erase(fieldIt); |
|---|
| | 449 | } |
|---|
| | 450 | } |
|---|
| | 451 | |
|---|
| | 452 | void GeometryBase::removeFromProperties(const GeoVectorPropertyPtr value) |
|---|
| | 453 | { |
|---|
| | 454 | Int32 iElemIdx = _mfProperties.findIndex(value); |
|---|
| | 455 | |
|---|
| | 456 | if(iElemIdx != -1) |
|---|
| | 457 | { |
|---|
| | 458 | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| | 459 | |
|---|
| | 460 | MFUnrecChildGeoVectorPropertyPtr::iterator fieldIt = _mfProperties.begin_nc(); |
|---|
| | 461 | |
|---|
| | 462 | fieldIt += iElemIdx; |
|---|
| | 463 | |
|---|
| | 464 | _mfProperties.erase(fieldIt); |
|---|
| | 465 | } |
|---|
| | 466 | } |
|---|
| | 467 | void GeometryBase::clearProperties(void) |
|---|
| 420 | | MFUnrecChildGeoVectorPropertyPtr::iterator fieldIt = _mfProperties.begin_nc(); |
|---|
| 421 | | |
|---|
| 422 | | //addRef(value); |
|---|
| 423 | | |
|---|
| 424 | | fieldIt += uiIndex; |
|---|
| 425 | | |
|---|
| 426 | | _mfProperties.insert(fieldIt, value); |
|---|
| 427 | | |
|---|
| 428 | | // if(value == NullFC) |
|---|
| 429 | | // return; |
|---|
| 430 | | } |
|---|
| 431 | | |
|---|
| 432 | | void GeometryBase::replaceInProperties( UInt32 uiIndex, |
|---|
| 433 | | const GeoVectorPropertyPtr value ) |
|---|
| 434 | | { |
|---|
| 435 | | if(uiIndex >= _mfProperties.size()) |
|---|
| 436 | | return; |
|---|
| 437 | | |
|---|
| 438 | | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| 439 | | |
|---|
| 440 | | |
|---|
| 441 | | // addRef(value); |
|---|
| 442 | | // subRef(_mfProperties[uiIndex]); |
|---|
| 443 | | |
|---|
| 444 | | // _mfProperties[uiIndex] = value; |
|---|
| 445 | | |
|---|
| 446 | | _mfProperties.replace(uiIndex, value); |
|---|
| 447 | | |
|---|
| 448 | | // if(value == NullFC) |
|---|
| 449 | | // return; |
|---|
| 450 | | } |
|---|
| 451 | | |
|---|
| 452 | | void GeometryBase::replaceInProperties(const GeoVectorPropertyPtr pOldElem, |
|---|
| 453 | | const GeoVectorPropertyPtr pNewElem) |
|---|
| 454 | | { |
|---|
| 455 | | Int32 elemIdx = _mfProperties.findIndex(pOldElem); |
|---|
| 456 | | |
|---|
| 457 | | if(elemIdx != -1) |
|---|
| 458 | | { |
|---|
| 459 | | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| 460 | | |
|---|
| 461 | | // MFGeoVectorPropertyPtr::iterator fieldIt = _mfProperties.begin(); |
|---|
| 462 | | |
|---|
| 463 | | // fieldIt += elemIdx; |
|---|
| 464 | | // addRef(pNewElem); |
|---|
| 465 | | // subRef(pOldElem); |
|---|
| 466 | | |
|---|
| 467 | | // (*fieldIt) = pNewElem; |
|---|
| 468 | | _mfProperties.replace(elemIdx, pNewElem); |
|---|
| 469 | | } |
|---|
| 470 | | } |
|---|
| 471 | | |
|---|
| 472 | | void GeometryBase::removeFromProperties(UInt32 uiIndex) |
|---|
| 473 | | { |
|---|
| 474 | | if(uiIndex < _mfProperties.size()) |
|---|
| 475 | | { |
|---|
| 476 | | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| 477 | | |
|---|
| 478 | | MFUnrecChildGeoVectorPropertyPtr::iterator fieldIt = _mfProperties.begin_nc(); |
|---|
| 479 | | |
|---|
| 480 | | fieldIt += uiIndex; |
|---|
| 481 | | |
|---|
| 482 | | //subRef(*fieldIt); |
|---|
| 483 | | |
|---|
| 484 | | _mfProperties.erase(fieldIt); |
|---|
| 485 | | } |
|---|
| 486 | | } |
|---|
| 487 | | |
|---|
| 488 | | void GeometryBase::removeFromProperties(const GeoVectorPropertyPtr value) |
|---|
| 489 | | { |
|---|
| 490 | | Int32 iElemIdx = _mfProperties.findIndex(value); |
|---|
| 491 | | |
|---|
| 492 | | if(iElemIdx != -1) |
|---|
| 493 | | { |
|---|
| 494 | | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| 495 | | |
|---|
| 496 | | MFUnrecChildGeoVectorPropertyPtr::iterator fieldIt = _mfProperties.begin_nc(); |
|---|
| 497 | | |
|---|
| 498 | | fieldIt += iElemIdx; |
|---|
| 499 | | |
|---|
| 500 | | //subRef(*fieldIt); |
|---|
| 501 | | |
|---|
| 502 | | _mfProperties.erase(fieldIt); |
|---|
| 503 | | } |
|---|
| 504 | | } |
|---|
| 505 | | void GeometryBase::clearProperties(void) |
|---|
| 506 | | { |
|---|
| 507 | | editMField(PropertiesFieldMask, _mfProperties); |
|---|
| 508 | | |
|---|
| 542 | | void GeometryBase::insertIntoPropIndices( UInt32 uiIndex, |
|---|
| 543 | | const GeoIntegralPropertyPtr value ) |
|---|
| 544 | | { |
|---|
| 545 | | editMField(PropIndicesFieldMask, _mfPropIndices); |
|---|
| 546 | | |
|---|
| 547 | | MFUnrecChildGeoIntegralPropertyPtr::iterator fieldIt = _mfPropIndices.begin_nc(); |
|---|
| 548 | | |
|---|
| 549 | | //addRef(value); |
|---|
| 550 | | |
|---|
| 551 | | fieldIt += uiIndex; |
|---|
| 552 | | |
|---|
| 553 | | _mfPropIndices.insert(fieldIt, value); |
|---|
| 554 | | |
|---|
| 555 | | // if(value == NullFC) |
|---|
| 556 | | // return; |
|---|
| 557 | | } |
|---|
| 558 | | |
|---|
| 559 | | void GeometryBase::replaceInPropIndices( UInt32 uiIndex, |
|---|
| 560 | | const GeoIntegralPropertyPtr value ) |
|---|
| 561 | | { |
|---|
| 562 | | if(uiIndex >= _mfPropIndices.size()) |
|---|
| 563 | | return; |
|---|
| 564 | | |
|---|
| 565 | | editMField(PropIndicesFieldMask, _mfPropIndices); |
|---|
| 566 | | |
|---|
| 567 | | |
|---|
| 568 | | // addRef(value); |
|---|
| 569 | | // subRef(_mfPropIndices[uiIndex]); |
|---|
| 570 | | |
|---|
| 571 | | // _mfPropIndices[uiIndex] = value; |
|---|
| 572 | | |
|---|
| 573 | | _mfPropIndices.replace(uiIndex, value); |
|---|
| 574 | | |
|---|
| 575 | | // if(value == NullFC) |
|---|
| 576 | | // return; |
|---|
| 577 | | } |
|---|
| 578 | | |
|---|
| 579 | | void GeometryBase::replaceInPropIndices(const GeoIntegralPropertyPtr pOldElem, |
|---|
| 580 | | const GeoIntegralPropertyPtr pNewElem) |
|---|
| 581 | | { |
|---|
| 582 | | Int32 elemIdx = _mfPropIndices.findIndex(pOldElem); |
|---|
| 583 | | |
|---|
| 584 | | if(elemIdx != -1) |
|---|
| | 499 | void GeometryBase::removeFromPropIndices(UInt32 uiIndex) |
|---|
| | 500 | { |
|---|
| | 501 | if(uiIndex < _mfPropIndices.size()) |
|---|
| 588 | | // MFGeoIntegralPropertyPtr::iterator fieldIt = _mfPropIndices.begin(); |
|---|
| 589 | | |
|---|
| 590 | | // fieldIt += elemIdx; |
|---|
| 591 | | // addRef(pNewElem); |
|---|
| 592 | | // subRef(pOldElem); |
|---|
| 593 | | |
|---|
| 594 | | // (*fieldIt) = pNewElem; |
|---|
| 595 | | _mfPropIndices.replace(elemIdx, pNewElem); |
|---|
| 596 | | } |
|---|
| 597 | | } |
|---|
| 598 | | |
|---|
| 599 | | void GeometryBase::removeFromPropIndices(UInt32 uiIndex) |
|---|
| 600 | | { |
|---|
| 601 | | if(uiIndex < _mfPropIndices.size()) |
|---|
| | 505 | MFUnrecChildGeoIntegralPropertyPtr::iterator fieldIt = _mfPropIndices.begin_nc(); |
|---|
| | 506 | |
|---|
| | 507 | fieldIt += uiIndex; |
|---|
| | 508 | |
|---|
| | 509 | _mfPropIndices.erase(fieldIt); |
|---|
| | 510 | } |
|---|
| | 511 | } |
|---|
| | 512 | |
|---|
| | 513 | void GeometryBase::removeFromPropIndices(const GeoIntegralPropertyPtr value) |
|---|
| | 514 | { |
|---|
| | 515 | Int32 iElemIdx = _mfPropIndices.findIndex(value); |
|---|
| | 516 | |
|---|
| | 517 | if(iElemIdx != -1) |
|---|