Ignore:
Timestamp:
01/25/17 16:25:17 (7 years ago)
Author:
yushan
Message:

initialize the branch

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_yushan/src/filter/garbage_collector.cpp

    r1006 r1037  
    33namespace xios 
    44{ 
    5   void CGarbageCollector::registerObject(InvalidableObject* Object, Time timestamp) 
     5  void CGarbageCollector::registerFilter(CInputPin* inputPin, Time timestamp) 
    66  { 
    7     registeredObjects[timestamp].insert(Object); 
     7    registeredFilters[timestamp].insert(inputPin); 
    88  } 
    99 
    10   void CGarbageCollector::unregisterObject(InvalidableObject* Object, Time timestamp) 
     10  void CGarbageCollector::unregisterFilter(CInputPin* inputPin, Time timestamp) 
    1111  { 
    12     std::map<Time, std::set<InvalidableObject*> >::iterator it = registeredObjects.find(timestamp); 
    13     if (it != registeredObjects.end()) 
    14       it->second.erase(Object); 
     12    std::map<Time, std::set<CInputPin*> >::iterator it = registeredFilters.find(timestamp); 
     13    if (it != registeredFilters.end()) 
     14      it->second.erase(inputPin); 
    1515  } 
    1616 
    1717  void CGarbageCollector::invalidate(Time timestamp) 
    1818  { 
    19     std::map<Time, std::set<InvalidableObject*> >::iterator it    = registeredObjects.begin(), 
    20                                                             itEnd = registeredObjects.lower_bound(timestamp); 
     19    std::map<Time, std::set<CInputPin*> >::iterator it    = registeredFilters.begin(), 
     20                                                    itEnd = registeredFilters.lower_bound(timestamp); 
    2121    for (; it != itEnd; ++it) 
    2222    { 
    23       std::set<InvalidableObject*>::iterator itObject    = it->second.begin(), 
    24                                              itObjectEnd = it->second.end(); 
    25       for (; itObject != itObjectEnd; ++itObject) 
    26         (*itObject)->invalidate(timestamp); 
     23      std::set<CInputPin*>::iterator itFilter    = it->second.begin(), 
     24                                     itFilterEnd = it->second.end(); 
     25      for (; itFilter != itFilterEnd; ++itFilter) 
     26        (*itFilter)->invalidate(timestamp); 
    2727    } 
    28     registeredObjects.erase(registeredObjects.begin(), itEnd); 
     28    registeredFilters.erase(registeredFilters.begin(), itEnd); 
    2929  } 
    3030} // namespace xios 
Note: See TracChangeset for help on using the changeset viewer.