示例#1
0
void MockPlugin::onDeactivate(const char* val)
{
    TEST_ONDEACTIVE++;
    unregisterObserver("subnode.*");
    unregisterObserver("status");
    super_type::onDeactivate(val);
}
示例#2
0
void MgShapesLock::registerObserver(ShapesLocked func, void* obj)
{
    if (func) {
        unregisterObserver(func, obj);
        s_shapeObservers.push_back(ShapeObserver(func, obj));
    }
}
示例#3
0
void MgShapeDoc::registerObserver(ShapesLocked func, void* obj)
{
    if (func) {
        unregisterObserver(func, obj);
        im->observers.push_back(Impl::Observer(func, obj));
    }
}
示例#4
0
traceObserver::~traceObserver() {
  // Unregister this object from all those that are observing it
  while(observers.size()>0)
    unregisterObserver(observers.begin()->first);
  
  // Unregister this object from all those that it is observing
  while(observing.size()>0)
    observing.begin()->first->unregisterObserver(this);
  
  // Notify all the objects that are observing this one that its stream is finished
  notifyObsFinish();
}  
示例#5
0
// Places the given set of traceObservers immediately after this observer and before all of the observers that watch it
void traceObserver::prependObservers(const std::set<traceObserver*>& newObservers) {
  // Back up the original set of observers and remove them
  map<traceObserver*, int> origObservers = observers;
  while(observers.size()>0) {
    // newObservers and origObservers must be disjoint
    assert(newObservers.find(observers.begin()->first) == newObservers.end());
    
    unregisterObserver(observers.begin()->first);
  }

  // Add each new observer to this observer
  for(set<traceObserver*>::const_iterator n=newObservers.begin(); n!=newObservers.end(); n++) {
    registerObserver(*n);
    // And add all of the original observers to watch this current new observer
    for(map<traceObserver*, int>::iterator o=origObservers.begin(); o!=origObservers.end(); o++)
      (*n)->registerObserver(o->first);
  }
}
void MLC_SerialTargetPlugin::onDeactivate(const char * val)
{
    unregisterObserver("");
    super_type::onDeactivate(val);
}
示例#7
0
 virtual void registerObserver(CmdObserver* observer) {
     if (observer) {
         unregisterObserver(observer);
         _arr.push_back(observer);
     }
 }
/*! Unregister an observer so it does not get notified of changes
 *  anymore.
 *  \deprecated Obsolete coding style.
 */
void ConfigManager::UnregisterObserver(ConfigObserver *observer)

{
  unregisterObserver(observer);
}
示例#9
0
// Observer base interface.
Observer::~Observer() {
	for_const (auto connection, _connections) {
		unregisterObserver(connection);
	}