source: molecuilder/src/ChangeTracker.cpp@ eb94c1

Last change on this file since eb94c1 was eb94c1, checked in by Saskia Metzler <metzler@…>, 16 years ago

Work-in-progress commit of change tracker and parser

  • Property mode set to 100644
File size: 740 bytes
RevLine 
[eb94c1]1/*
2 * ChangeTracker.cpp
3 *
4 * Created on: Mar 1, 2010
5 * Author: metzler
6 */
7
8#include "ChangeTracker.hpp"
9
10ChangeTracker* ChangeTracker::instance = NULL;
11
12ChangeTracker::ChangeTracker() {
13 isConsistent = true;
14 World::get()->signOn(this);
15}
16
17ChangeTracker::~ChangeTracker() {
18 World::get()->signOff(this);
19}
20
21ChangeTracker* ChangeTracker::get() {
22 if (instance == NULL) {
23 instance = new ChangeTracker();
24 }
25
26 return instance;
27}
28
29void ChangeTracker::destroy() {
30 delete instance;
31 instance = NULL;
32}
33
34void ChangeTracker::update(Observable *publisher) {
35 isConsistent = false;
36}
37
38bool ChangeTracker::hasChanged() {
39 return !isConsistent;
40}
41
42void ChangeTracker::saveStatus() {
43 if (hasChanged()) {
44 notifyAll();
45 }
46}
Note: See TracBrowser for help on using the repository browser.