예제 #1
0
void EditSFieldHandle<SFChunkBlockPtrMap>::flatten(ContainerList &vList)
{
    vList.clear();

    const SFChunkBlockPtrMap *pMap = static_cast<SFChunkBlockPtrMap *>(_pField);

    if(pMap != NULL)
    {
        ChunkBlockMap::const_iterator mapIt  = pMap->getValue().begin();
        ChunkBlockMap::const_iterator mapEnd = pMap->getValue().end  ();

        for(; mapIt != mapEnd; ++mapIt)
        {
            vList.push_back(mapIt->second);
        }
    }
}
void EditSFieldHandle<SFAttachmentPtrMap>::flatten(ContainerList &vList)
{
    vList.clear();

    const SFAttachmentPtrMap *pMap = static_cast<SFAttachmentPtrMap *>(_pField);

    if(pMap != NULL)
    {
        AttachmentMap::const_iterator mapIt  = pMap->getValue().begin();
        AttachmentMap::const_iterator mapEnd = pMap->getValue().end  ();

        for(; mapIt != mapEnd; ++mapIt)
        {
            if(mapIt->second->getInternal() == true)
                continue;

            vList.push_back(mapIt->second);
        }
    }
}