blob: 20edadc0a797345721afb65987b1261ab8c4893c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#ifndef LLMR_STYLE_APPLIED_CLASS_PROPERTIES
#define LLMR_STYLE_APPLIED_CLASS_PROPERTIES
#include <llmr/style/property_value.hpp>
#include <llmr/style/class_dictionary.hpp>
#include <llmr/util/time.hpp>
#include <list>
namespace llmr {
class AppliedClassProperty {
public:
AppliedClassProperty(ClassID class_id, timestamp begin, timestamp end, const PropertyValue &value);
public:
const ClassID name;
const timestamp begin;
const timestamp end;
const PropertyValue value;
};
class AppliedClassProperties {
public:
std::list<AppliedClassProperty> properties;
public:
// Returns thie ID of the most recent
ClassID mostRecent() const;
void add(ClassID class_id, timestamp begin, timestamp end, const PropertyValue &value);
bool hasTransitions() const;
void cleanup(timestamp now);
bool empty() const;
};
}
#endif
|