+/*
+# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+# pour la Santé)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+#
+# This software is governed by the CeCILL-B license under French law and
+# abiding by the rules of distribution of free software. You can use,
+# modify and/ or redistribute the software under the terms of the CeCILL-B
+# license as circulated by CEA, CNRS and INRIA at the following URL
+# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+# or in the file LICENSE.txt.
+#
+# As a counterpart to the access to the source code and rights to copy,
+# modify and redistribute granted by the license, users are provided only
+# with a limited warranty and the software's author, the holder of the
+# economic rights, and the successive licensors have only limited
+# liability.
+#
+# The fact that you are presently reading this means that you have had
+# knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------
+*/
+
/*=========================================================================
Program: bbtk
Module: $RCSfile$
//=========================================================================
Observable::Observable()
{
- _changed=false;
}
//=========================================================================
+
Observable::~Observable()
{
}
- //=========================================================================
-
- bool Observable::hasChanged()
- {
- return _changed;
- }
//=========================================================================
- void Observable::notifyObservers()
+ void Observable::notifyObservers(int idCaller,int command)
{
+
int i;
for(i=0;i<_observers.size();i++)
{
- _observers[i]->update();
- }
- _changed=false;
+ _observers[i]->update(idCaller,command);
+ }
}
- //=========================================================================
-
- void Observable::setChanged()
+ //=========================================================================
+
+ void Observable::addObserver(Observer *observer)
{
- _changed=true;
+ _observers.push_back(observer);
}
- //=========================================================================
-
} // EO namespace bbtk
// EOF