- // result Event * must be deleted by caller of lookupEvent
- inline RESULT lookupEvent(const eServiceReferenceDVB &service, int event_id, Event *& );
- inline RESULT lookupEvent(const eServiceReferenceDVB &service, time_t , Event *& );
-
- // 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 *& );
+ // at moment just for one service..
+ RESULT startTimeQuery(const eServiceReference &service, time_t begin=-1, int minutes=-1);
+
+#ifndef SWIG
+ // 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..
+ SWIG_VOID(RESULT) lookupEventId(const eServiceReference &service, int event_id, const eventData *&SWIG_OUTPUT);
+ SWIG_VOID(RESULT) lookupEventTime(const eServiceReference &service, time_t, const eventData *&SWIG_OUTPUT, int direction=0);
+ SWIG_VOID(RESULT) getNextTimeEntry(const eventData *&SWIG_OUTPUT);
+
+ // eit_event_struct's are plain dvb eit_events .. it's not safe to use them after cache unlock
+ // its not allowed to delete this pointers via delete or free..
+ RESULT lookupEventId(const eServiceReference &service, int event_id, const eit_event_struct *&);
+ RESULT lookupEventTime(const eServiceReference &service, time_t , const eit_event_struct *&, int direction=0);
+ RESULT getNextTimeEntry(const eit_event_struct *&);
+
+ // Event's are parsed epg events.. it's safe to use them after cache unlock
+ // after use this Events must be deleted (memleaks)
+ RESULT lookupEventId(const eServiceReference &service, int event_id, Event* &);
+ RESULT lookupEventTime(const eServiceReference &service, time_t, Event* &, int direction=0);
+ RESULT getNextTimeEntry(Event *&);
+#endif
+ PyObject *lookupEvent(PyObject *list, PyObject *convertFunc=NULL);