blob: 58079da077d4b7c75d929519359187c577b4f10b (
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
|
#include <lib/service/event.h>
#include <lib/dvb_si/eit.h>
#include <lib/dvb_si/short_event_descriptor.h>
#include <lib/dvb_si/descriptor_tag.h>
DEFINE_REF(eServiceEvent);
RESULT eServiceEvent::parseFrom(Event *evt)
{
m_begin = 0; // ich bin FAUL
m_duration = (evt->getDuration() & 0xFF) + ((evt->getDuration() >> 8) & 0xFF) * 60 + ((evt->getDuration() >> 16) & 0xFF) * 24 * 60;
for (DescriptorConstIterator desc = evt->getDescriptors()->begin(); desc != evt->getDescriptors()->end(); ++desc)
{
switch ((*desc)->getTag())
{
case SHORT_EVENT_DESCRIPTOR:
{
const ShortEventDescriptor *sed = (ShortEventDescriptor*)*desc;
m_event_name = sed->getEventName();
m_description = sed->getText();
break;
}
}
}
return 0;
}
DEFINE_REF(eDebugClass);
|