00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef Timeline_h
00010 #define Timeline_h
00011
00012 using namespace std;
00013
00019 class Timeline {
00020 private:
00024 const Id id;
00025
00029 Metadata metadata;
00030
00034 SignalSet signals;
00035
00041 Identifiers* signalIds;
00042
00043 public:
00045 Timeline(const Id& id);
00046
00048 ~Timeline();
00049
00051 const Id getId() const { return id; }
00052
00054 IdSet getSignals() const;
00055
00064 SignalId createSignal(Id id, string xlinkHref, MimeClass mimeClass,
00065 MimeType mimeType, Encoding encoding, Unit unit,
00066 string track) throw (AGException);
00067
00069 void deleteSignal(Signal* signal);
00070
00072 void setFeature(FeatureName featureName, FeatureValue featureValue);
00073
00075 bool existsFeature(FeatureName featureName);
00076
00078 void deleteFeature(FeatureName featureName);
00079
00081 string getFeature(FeatureName featureName);
00082
00086 StringSet getFeatureNames();
00087
00095 void setFeatures(Features features);
00096
00104 Features getFeatures();
00105
00110 void unsetFeatures();
00111
00113 list<string> storeSQLs(AGSetId id);
00114
00116 string toString();
00117
00118 };
00119
00120 #endif