- // methods for faster use.. but not thread save ..
- // Lock and Unlock should be used !!
- RESULT lookupEvent(const eServiceReferenceDVB &service, int event_id, const eventData *& );
- RESULT lookupEvent(const eServiceReferenceDVB &service, time_t , const eventData *& );
-
- inline RESULT getEventMap(const eServiceReferenceDVB &service, const eventMap *& );
- inline RESULT getTimeMap(const eServiceReferenceDVB &service, const timeMap *& );
-};
-
-TEMPLATE_TYPEDEF(ePtr<eEPGCache>,eEPGCachePtr);
-
-inline RESULT eEPGCache::lookupEvent(const eServiceReferenceDVB &service, time_t t, Event *& result )
-{
- const eventData *data=0;
- RESULT ret = lookupEvent(service, t, data);
- if ( !ret && data )
- result = new Event((uint8_t*)data->get());
- return ret;
-}
+ // eventData's are plain entrys out of the cache.. it's not safe to use them after cache unlock
+ // but its faster in use... its not allowed to delete this pointers via delete or free..
+ RESULT lookupEvent(const eServiceReference &service, int event_id, const eventData *&);
+ RESULT lookupEvent(const eServiceReference &service, time_t, const eventData *&);
+ RESULT getNextTimeEntry(const eventData *&);