9 #include "EdgeVisSDK.h" 22 class ITimelineWatcher
30 virtual void TimelineUpdated(
52 typedef std::vector< int64_t > TimesList;
53 typedef TimesList::const_iterator TimesListIterator;
54 typedef std::pair< TimesListIterator, TimesListIterator > TimesIteratorPair;
58 DB_EDGEVIS_SDK
virtual ~Timeline();
69 void RegisterWatcher(ITimelineWatcher* watcher);
77 void UnRegisterWatcher(ITimelineWatcher* watcher);
85 std::wstring Timezone()
const;
91 void Timezone(
const std::wstring& tz);
110 DB_EDGEVIS_SDK
size_t CountDays()
const;
117 DB_EDGEVIS_SDK
size_t CountHours()
const;
124 DB_EDGEVIS_SDK
size_t CountMins()
const;
133 DB_EDGEVIS_SDK TimesIteratorPair Days()
const;
142 DB_EDGEVIS_SDK TimesIteratorPair Hours()
const;
151 DB_EDGEVIS_SDK TimesIteratorPair Mins()
const;
159 DB_EDGEVIS_SDK TimesList DaysList()
const;
167 DB_EDGEVIS_SDK TimesList HoursList()
const;
175 DB_EDGEVIS_SDK TimesList MinsList()
const;
183 DB_EDGEVIS_SDK int64_t FirstDay()
const;
191 DB_EDGEVIS_SDK int64_t LastDay()
const;
200 DB_EDGEVIS_SDK int64_t FirstHour()
const;
208 DB_EDGEVIS_SDK int64_t LastHour()
const;
216 DB_EDGEVIS_SDK int64_t FirstMin()
const;
224 DB_EDGEVIS_SDK int64_t LastMin()
const;
232 DB_EDGEVIS_SDK
static int64_t CurrentTimeUTC();
241 TimesList m_daysTimeline;
242 TimesList m_hoursTimeline;
243 TimesList m_minsTimeline;
245 std::wstring m_timezone;
246 bool m_requiresConversion;
248 typedef std::vector< ITimelineWatcher* > WatchersList;
249 WatchersList m_listeners;
TimelineEntryFlags
This contains values representing the type of timeline entry.
Definition: TimelineEntryFlags.h:21
This contains lists of days, hours and minutes that the archive holds footage for.
Definition: Timeline.h:49
The EdgeVis Decoder SDK namespace.
OpResult
Result of an operation.
Definition: OpResult.h:25