Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] Re: ANNOUNCE: vdr-mhp-0.2
Am Sonntag, 19. September 2004 14:22 schrieb Andreas Brachold:
> Hi,
>
> Am So, den 19.09.2004 schrieb Marcel Wiesweg um 0:04:
> > This plugin aims at creating an MHP implementation for VDR.
>
> there are several pitfalls. i'm have try to compile the plugin
> with gcc-3.3.4 under vdr-1.3.10
>
> 1. On README the dependency on DFB++ are untouched.
> 2. ./libdvbsi/sirequests.c see attachment
> 3. same problem with gettext and missing buffersize at
> ./libdvbsi/objects.c likewise ./libait/ait.c posted here also.
> 4. at ./libdvbsi/objects.c i got follow compilermessages.
Problem 2,3,4 occur because my libsi I am developing against does not contain
the last changes from Klaus (problem 3), but do contain the patch I wrote
last week (which in turn in not yet incorporated in VDR). So problem two is
because on my system I need the new API, the same with number 4: I fixed
that, then I remembered that it broke compatibility, then I forgot that I had
changed this...
The patch for objects.c is attached, could not yet test it with a compiler
though.
Marcel
>
>
> g++ -O0 -g -Wall -Woverloaded-virtual -c -I../../../../include -I..
> objects.c
> objects.c: In member function `EightBit*
> DvbSi::EIT::Event::getContentNibbleLevel1(int&)':
> objects.c:133: error: no matching function for call to `
> SI::StructureLoop<SI::ContentDescriptor::Nibble>::getNext(
> SI::ContentDescriptor::Nibble&, SI::Loop::Iterator&)'
> ../../../../include/libsi/si.h:285: error: candidates are: T
> SI::StructureLoop<T>::getNext(SI::Loop::Iterator&) [with T =
> SI::ContentDescriptor::Nibble]
> make[1]: Entering directory
> `/usr/src/vdr/vdr-1.3.10/PLUGINS/src/mhp-0.2a/libdvbsi' g++ -O0 -g -Wall
> -Woverloaded-virtual -c -I../../../../include -I.. objects.c objects.c: In
> member function `EightBit*
> DvbSi::EIT::Event::getContentNibbleLevel1(int&)':
> objects.c:133: error: no matching function for call to `
> SI::StructureLoop<SI::ContentDescriptor::Nibble>::getNext(
> SI::ContentDescriptor::Nibble&, SI::Loop::Iterator&)'
> ../../../../include/libsi/si.h:285: error: candidates are: T
> SI::StructureLoop<T>::getNext(SI::Loop::Iterator&) [with T =
> SI::ContentDescriptor::Nibble]
> objects.c:139: error: no matching function for call to `
> SI::StructureLoop<SI::ContentDescriptor::Nibble>::getNext(
> SI::ContentDescriptor::Nibble&, SI::Loop::Iterator&)'
> ../../../../include/libsi/si.h:285: error: candidates are: T
> SI::StructureLoop<T>::getNext(SI::Loop::Iterator&) [with T =
> SI::ContentDescriptor::Nibble]
> objects.c: In member function `EightBit*
> DvbSi::EIT::Event::getContentNibbles(int&)':
> objects.c:154: error: no matching function for call to `
> SI::StructureLoop<SI::ContentDescriptor::Nibble>::getNext(
> SI::ContentDescriptor::Nibble&, SI::Loop::Iterator&)'
> ../../../../include/libsi/si.h:285: error: candidates are: T
> SI::StructureLoop<T>::getNext(SI::Loop::Iterator&) [with T =
> SI::ContentDescriptor::Nibble]
> objects.c:160: error: no matching function for call to `
> SI::StructureLoop<SI::ContentDescriptor::Nibble>::getNext(
> SI::ContentDescriptor::Nibble&, SI::Loop::Iterator&)'
> ../../../../include/libsi/si.h:285: error: candidates are: T
> SI::StructureLoop<T>::getNext(SI::Loop::Iterator&) [with T =
> SI::ContentDescriptor::Nibble]
> make[1]: *** [objects.o] Fehler 1
>
>
>
> Any fixes are welcome ;-)
> Andreas
--- objects.c.alt Sun Sep 19 23:04:00 2004
+++ objects.c Sun Sep 19 23:12:06 2004
@@ -131,5 +131,9 @@
int c=0;
SI::ContentDescriptor::Nibble nibble;
+ #if VDRVERSNUM > 10312
while (cd->nibbleLoop.getNext(nibble, it2))
+ #else
+ while (cd->nibbleLoop.hasNext(it2))
+ #endif
c++;
SI::EightBit *array=new SI::EightBit[c];
@@ -137,6 +141,11 @@
it2.reset();
c=0;
+ #if VDRVERSNUM > 10312
while (cd->nibbleLoop.getNext(nibble, it2))
array[c++]=(nibble.getContentNibbleLevel1() & 0xFF);
+ #else
+ while (cd->nibbleLoop.hasNext(it2))
+ array[c++]=(cd->nibbleLoop.getNext(it2).getContentNibbleLevel1() & 0xFF);
+ #endif
return array;
}
@@ -152,5 +161,9 @@
int c=0;
SI::ContentDescriptor::Nibble nibble;
+ #if VDRVERSNUM > 10312
while (cd->nibbleLoop.getNext(nibble, it2))
+ #else
+ while (cd->nibbleLoop.hasNext(it2))
+ #endif
c++;
SI::EightBit *array=new SI::EightBit[c];
@@ -158,7 +171,13 @@
it2.reset();
c=0;
- while (cd->nibbleLoop.getNext(nibble, it2)) {
+ #if VDRVERSNUM > 10312
+ while (cd->nibbleLoop.getNext(nibble, it2))
+ array[c++]=(nibble.getContentNibbleLevel1() << 16) & (nibble.getContentNibbleLevel2());
+ #else
+ while (cd->nibbleLoop.hasNext(it2)) {
+ nibble=cd->nibbleLoop.getNext(it2);
array[c++]=(nibble.getContentNibbleLevel1() << 16) & (nibble.getContentNibbleLevel2());
}
+ #endif
return array;
}
Home |
Main Index |
Thread Index