Serious-Engine/Sources/Engine/Base/Changeable.h

40 lines
1.2 KiB
C
Raw Permalink Normal View History

2016-03-12 01:20:51 +01:00
/* Copyright (c) 2002-2012 Croteam Ltd.
This program is free software; you can redistribute it and/or modify
it under the terms of version 2 of the GNU General Public License as published by
the Free Software Foundation
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
2016-03-11 14:57:17 +01:00
#ifndef SE_INCL_CHANGEABLE_H
#define SE_INCL_CHANGEABLE_H
#ifdef PRAGMA_ONCE
#pragma once
#endif
/*
* Object that can change in time.
*/
class ENGINE_API CChangeable {
private:
TIME ch_LastChangeTime; // last time this object has been changed
public:
/* Constructor. */
CChangeable(void);
/* Mark that something has changed in this object. */
void MarkChanged(void);
/* Test if some updateable object is up to date with this changeable. */
BOOL IsUpToDate(const CUpdateable &ud) const;
};
#endif /* include-once check. */