source: src/Parser/ChangeTracker.hpp@ 70f2a1

Action_Thermostats Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_StructOpt_integration_tests AutomationFragmentation_failures Candidate_v1.6.1 ChemicalSpaceEvaluator Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph Fix_Verbose_Codepatterns ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion Gui_displays_atomic_force_velocity JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool PythonUI_with_named_parameters Recreated_GuiChecks StoppableMakroAction TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps
Last change on this file since 70f2a1 was fa437c, checked in by Michael Ankele <ankele@…>, 12 years ago

made ChangeTracker::hasChanged() public

  • Property mode set to 100644
File size: 850 bytes
Line 
1/*
2 * ChangeTracker.hpp
3 *
4 * Created on: Mar 1, 2010
5 * Author: metzler
6 */
7
8#ifndef CHANGETRACKER_HPP_
9#define CHANGETRACKER_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16
17#include "CodePatterns/Observer/Observable.hpp"
18#include "CodePatterns/Singleton.hpp"
19
20/**
21 * Observes the world and notifies subscribers via saveStatus if there are
22 * changes to it.
23 */
24class ChangeTracker : public Singleton<ChangeTracker>, public Observable {
25 friend class Singleton<ChangeTracker>;
26public:
27 void saveStatus();
28 static ChangeTracker* get();
29 static void destroy();
30
31protected:
32 void update(Observable *publisher);
33
34public:
35 bool hasChanged();
36
37private:
38 bool isConsistent;
39
40 // private constructor and destructor due to singleton
41 ChangeTracker();
42 virtual ~ChangeTracker();
43};
44
45#endif /* CHANGETRACKER_HPP_ */
Note: See TracBrowser for help on using the repository browser.