17 #ifndef QGST_MESSAGE_H
18 #define QGST_MESSAGE_H
20 #include "miniobject.h"
21 #include "structure.h"
52 quint64 timestamp()
const;
53 QString typeName()
const;
54 MessageType type()
const;
56 StructurePtr internalStructure();
58 quint32 sequenceNumber()
const;
59 void setSequenceNumber(quint32 num);
67 QGST_WRAPPER_FAKE_SUBCLASS(Eos,
Message)
77 QGST_WRAPPER_FAKE_SUBCLASS(Error,
Message)
83 QString debugMessage()
const;
91 QGST_WRAPPER_FAKE_SUBCLASS(Warning,
Message)
97 QString debugMessage()
const;
105 QGST_WRAPPER_FAKE_SUBCLASS(Info,
Message)
111 QString debugMessage()
const;
119 QGST_WRAPPER_FAKE_SUBCLASS(Tag,
Message)
131 QGST_WRAPPER_FAKE_SUBCLASS(Buffering,
Message)
136 BufferingMode mode()
const;
137 int averageInputRate()
const;
138 int averageOutputRate()
const;
139 qint64 bufferingTimeLeft()
const;
141 void setStats(BufferingMode mode,
int avgIn,
int avgOut, qint64 bufferingLeft);
149 QGST_WRAPPER_FAKE_SUBCLASS(StateChanged,
Message)
152 State oldState, State newState, State pending);
154 State oldState()
const;
155 State newState()
const;
156 State pendingState()
const;
166 QGST_WRAPPER_FAKE_SUBCLASS(StepDone,
Message)
169 double rate,
bool flush,
bool intermediate, quint64 duration,
bool eos);
171 Format format()
const;
172 quint64 amount()
const;
174 bool isFlushingStep()
const;
175 bool isIntermediateStep()
const;
176 quint64 duration()
const;
177 bool causedEos()
const;
188 QGST_WRAPPER_FAKE_SUBCLASS(StreamStatus,
Message)
191 StreamStatusType type,
const ElementPtr & owner);
193 StreamStatusType statusType()
const;
196 void setStreamStatusObject(
const QGlib::Value &
object);
204 QGST_WRAPPER_FAKE_SUBCLASS(Application,
Message)
228 QGST_WRAPPER_FAKE_SUBCLASS(SegmentDone,
Message)
232 Format format()
const;
233 qint64 position()
const;
241 QGST_WRAPPER_FAKE_SUBCLASS(Duration,
Message)
245 Format format()
const;
246 qint64 duration()
const;
254 QGST_WRAPPER_FAKE_SUBCLASS(Latency,
Message)
266 QGST_WRAPPER_FAKE_SUBCLASS(AsyncDone,
Message)
276 QGST_WRAPPER_FAKE_SUBCLASS(RequestState,
Message)
288 QGST_WRAPPER_FAKE_SUBCLASS(StepStart,
Message)
291 quint64 amount,
double rate,
bool flush,
bool intermediate);
292 bool isActive()
const;
293 Format format()
const;
294 quint64 amount()
const;
296 bool isFlushingStep()
const;
297 bool isIntermediateStep()
const;
305 QGST_WRAPPER_FAKE_SUBCLASS(Qos,
Message)
308 quint64 streamTime, quint64 timestamp, quint64 duration);
311 quint64 runningTime()
const;
312 quint64 streamTime()
const;
313 quint64 timestamp()
const;
314 quint64 duration()
const;
316 qint64 jitter()
const;
317 double proportion()
const;
319 void setValues(qint64 jitter,
double proportion,
int quality);
321 Format format()
const;
322 quint64 processed()
const;
323 quint64 dropped()
const;
324 void setStats(Format format, quint64 processed, quint64 dropped);
330 QGST_REGISTER_SUBCLASS(Message, Eos)
331 QGST_REGISTER_SUBCLASS(Message, Error)
332 QGST_REGISTER_SUBCLASS(Message, Warning)
333 QGST_REGISTER_SUBCLASS(Message, Info)
334 QGST_REGISTER_SUBCLASS(Message, Tag)
335 QGST_REGISTER_SUBCLASS(Message, Buffering)
336 QGST_REGISTER_SUBCLASS(Message, StateChanged)
337 QGST_REGISTER_SUBCLASS(Message, StepDone)
338 QGST_REGISTER_SUBCLASS(Message, StreamStatus)
339 QGST_REGISTER_SUBCLASS(Message, Application)
340 QGST_REGISTER_SUBCLASS(Message, Element)
341 QGST_REGISTER_SUBCLASS(Message, SegmentDone)
342 QGST_REGISTER_SUBCLASS(Message, Duration)
343 QGST_REGISTER_SUBCLASS(Message, Latency)
344 QGST_REGISTER_SUBCLASS(Message, AsyncDone)
345 QGST_REGISTER_SUBCLASS(Message, RequestState)
346 QGST_REGISTER_SUBCLASS(Message, StepStart)
347 QGST_REGISTER_SUBCLASS(Message, Qos)