Show
Ignore:
Timestamp:
05/05/08 06:39:01 (4 months ago)
Author:
vossg
Message:

changed: base rebuild

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/Source/System/Cluster/Window/SortLast/OSGSortLastWindowBase.cpp

    r1178 r1193  
    218218} 
    219219 
     220MFUnrecNodePtr      *SortLastWindowBase::editMFGroupNodes     (void) 
     221{ 
     222    editMField(GroupNodesFieldMask, _mfGroupNodes); 
     223 
     224    return &_mfGroupNodes; 
     225} 
     226 
    220227MFUInt32 *SortLastWindowBase::editMFGroupLengths(void) 
    221228{ 
     
    260267void SortLastWindowBase::pushToGroupNodes(const NodePtr value) 
    261268{ 
    262     if(value == NullFC) 
    263         return; 
    264  
    265269    editMField(GroupNodesFieldMask, _mfGroupNodes); 
    266  
    267     //addRef(value); 
    268270 
    269271    _mfGroupNodes.push_back(value); 
     
    287289} 
    288290 
    289 void SortLastWindowBase::insertIntoGroupNodes(      UInt32         uiIndex, 
    290                                                    const NodePtr value   ) 
    291 
    292     if(value == NullFC) 
    293         return; 
    294  
    295     editMField(GroupNodesFieldMask, _mfGroupNodes); 
    296  
    297     MFUnrecNodePtr::iterator fieldIt = _mfGroupNodes.begin_nc(); 
    298  
    299     //addRef(value); 
    300  
    301     fieldIt += uiIndex; 
    302  
    303     _mfGroupNodes.insert(fieldIt, value); 
    304 
    305  
    306 void SortLastWindowBase::replaceInGroupNodes(      UInt32         uiIndex, 
    307                                                        const NodePtr value   ) 
    308 
    309     if(value == NullFC) 
    310         return; 
    311  
    312     if(uiIndex >= _mfGroupNodes.size()) 
    313         return; 
    314  
    315     editMField(GroupNodesFieldMask, _mfGroupNodes); 
    316  
    317  
    318 //    addRef(value); 
    319 //    subRef(_mfGroupNodes[uiIndex]); 
    320  
    321 //    _mfGroupNodes[uiIndex] = value; 
    322  
    323       _mfGroupNodes.replace(uiIndex, value); 
    324 
    325  
    326 void SortLastWindowBase::replaceInGroupNodes(const NodePtr pOldElem, 
    327                                                         const NodePtr pNewElem) 
    328 
    329     if(pNewElem == NullFC) 
    330         return; 
    331  
    332     Int32  elemIdx = _mfGroupNodes.findIndex(pOldElem); 
    333  
    334     if(elemIdx != -1) 
     291void SortLastWindowBase::removeFromGroupNodes(UInt32 uiIndex) 
     292
     293    if(uiIndex < _mfGroupNodes.size()) 
    335294    { 
    336295        editMField(GroupNodesFieldMask, _mfGroupNodes); 
    337296 
    338 //        MFNodePtr::iterator fieldIt = _mfGroupNodes.begin(); 
    339  
    340 //        fieldIt += elemIdx; 
    341 //        addRef(pNewElem); 
    342 //        subRef(pOldElem); 
    343  
    344 //        (*fieldIt) = pNewElem; 
    345           _mfGroupNodes.replace(elemIdx, pNewElem); 
    346     } 
    347 
    348  
    349 void SortLastWindowBase::removeFromGroupNodes(UInt32 uiIndex) 
    350 
    351     if(uiIndex < _mfGroupNodes.size()) 
     297        MFUnrecNodePtr::iterator fieldIt = _mfGroupNodes.begin_nc(); 
     298 
     299        fieldIt += uiIndex; 
     300 
     301        _mfGroupNodes.erase(fieldIt); 
     302    } 
     303
     304 
     305void SortLastWindowBase::removeFromGroupNodes(const NodePtr value) 
     306
     307    Int32 iElemIdx = _mfGroupNodes.findIndex(value); 
     308 
     309    if(iElemIdx != -1) 
    352310    { 
    353311        editMField(GroupNodesFieldMask, _mfGroupNodes); 
     
    355313        MFUnrecNodePtr::iterator fieldIt = _mfGroupNodes.begin_nc(); 
    356314 
    357         fieldIt += uiIndex; 
    358  
    359         //subRef(*fieldIt); 
    360  
    361         _mfGroupNodes.erase(fieldIt); 
    362     } 
    363 } 
    364  
    365 void SortLastWindowBase::removeFromGroupNodes(const NodePtr value) 
    366 { 
    367     Int32 iElemIdx = _mfGroupNodes.findIndex(value); 
    368  
    369     if(iElemIdx != -1) 
    370     { 
    371         editMField(GroupNodesFieldMask, _mfGroupNodes); 
    372  
    373         MFUnrecNodePtr::iterator fieldIt = _mfGroupNodes.begin_nc(); 
    374  
    375315        fieldIt += iElemIdx; 
    376  
    377         //subRef(*fieldIt); 
    378316 
    379317        _mfGroupNodes.erase(fieldIt); 
     
    568506    if(source != NULL) 
    569507    { 
     508        SortLastWindow *pThis = static_cast<SortLastWindow *>(this); 
    570509 
    571510        MFUnrecNodePtr::const_iterator GroupNodesIt  = 
     
    576515        while(GroupNodesIt != GroupNodesEnd) 
    577516        { 
    578             this->pushToGroupNodes(*GroupNodesIt); 
     517            pThis->pushToGroupNodes(*GroupNodesIt); 
    579518 
    580519            ++GroupNodesIt;