mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-21 14:49:19 +02:00
Set dp branch as trunk
This commit is contained in:
45
ResourceManager.h
Normal file
45
ResourceManager.h
Normal file
@@ -0,0 +1,45 @@
|
||||
#ifndef RESOURCEMANAGER_H
|
||||
#define RESOURCEMANAGER_H 1
|
||||
|
||||
#include <vector>
|
||||
#include <algorithm>
|
||||
|
||||
#pragma hdrstop
|
||||
|
||||
class Resource
|
||||
{
|
||||
|
||||
public:
|
||||
virtual void Release() = 0;
|
||||
double GetLastUsage() const { return _lastUsage; }
|
||||
|
||||
protected:
|
||||
void SetLastUsage(double lastUsage) { _lastUsage = lastUsage; }
|
||||
|
||||
private:
|
||||
double _lastUsage;
|
||||
|
||||
};
|
||||
|
||||
class ResourceManager
|
||||
{
|
||||
|
||||
public:
|
||||
static void Register(Resource* resource);
|
||||
static void Unregister(Resource* resource);
|
||||
|
||||
static void Sweep(double currentTime);
|
||||
static void SetExpiry(double expiry) { _expiry = expiry; }
|
||||
|
||||
private:
|
||||
typedef std::vector<Resource*> Resources;
|
||||
|
||||
static double _expiry;
|
||||
static double _lastUpdate;
|
||||
static double _lastReport;
|
||||
|
||||
static Resources _resources;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user