add function to set epg language
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>
Tue, 21 Mar 2006 09:35:01 +0000 (09:35 +0000)
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>
Tue, 21 Mar 2006 09:35:01 +0000 (09:35 +0000)
lib/service/event.cpp
lib/service/event.h

index 2d0f83a47833547a0cd74137fa6019181e637732..07c92c52ffd7b25f3af11cb31081b1a7268b8d5b 100644 (file)
 #include <dvbsi++/component_descriptor.h>
 #include <dvbsi++/descriptor_tag.h>
 
 #include <dvbsi++/component_descriptor.h>
 #include <dvbsi++/descriptor_tag.h>
 
+// static members / methods
+std::string eServiceEvent::m_language = "de_DE";
+
+void eServiceEvent::setEPGLanguage( const std::string language )
+{
+       m_language = language;
+}
+///////////////////////////
+
 DEFINE_REF(eServiceEvent);
 DEFINE_REF(eComponentData);
 
 DEFINE_REF(eServiceEvent);
 DEFINE_REF(eComponentData);
 
@@ -165,9 +174,8 @@ RESULT eServiceEvent::parseFrom(Event *evt, int tsidonid)
        );
        m_event_id = evt->getEventId();
        m_duration = fromBCD(duration>>16)*3600+fromBCD(duration>>8)*60+fromBCD(duration);
        );
        m_event_id = evt->getEventId();
        m_duration = fromBCD(duration>>16)*3600+fromBCD(duration>>8)*60+fromBCD(duration);
-       std::string country="de_DE";  // TODO use local data here
        for (int i=0; i < MAX_LANG; i++)
        for (int i=0; i < MAX_LANG; i++)
-               if (country==ISOtbl[i][0])
+               if (m_language==ISOtbl[i][0])
                        if (loadLanguage(evt, ISOtbl[i][1], tsidonid))
                                return 0;
        if (loadLanguage(evt, "eng", tsidonid))
                        if (loadLanguage(evt, ISOtbl[i][1], tsidonid))
                                return 0;
        if (loadLanguage(evt, "eng", tsidonid))
index 9ee6538bd08d4c2462a55765c37d2f60e9983c51..285a4ae3ee0aadafb6416c459f50f7f440c0f6d8 100644 (file)
@@ -39,11 +39,13 @@ class eServiceEvent: public iObject
        int m_duration;
        int m_event_id;
        std::string m_event_name, m_short_description, m_extended_description;
        int m_duration;
        int m_event_id;
        std::string m_event_name, m_short_description, m_extended_description;
+       static std::string m_language;
        // .. additional info
 public:
 #ifndef SWIG
        RESULT parseFrom(Event *evt, int tsidonid=0);
 #endif
        // .. additional info
 public:
 #ifndef SWIG
        RESULT parseFrom(Event *evt, int tsidonid=0);
 #endif
+       static void setEPGLanguage( const std::string language );
        time_t getBeginTime() const { return m_begin; }
        int getDuration() const { return m_duration; }
        int getEventId() const { return m_event_id; }
        time_t getBeginTime() const { return m_begin; }
        int getDuration() const { return m_duration; }
        int getEventId() const { return m_event_id; }