On Tue, Jul 11, 2000 at 02:11:15PM -0500, Hiromasa Kato wrote:

> I don't have a solaris machine with me, but a quick look at
> io/soundcard/unix/solaris/soundcardpmo.cpp suggests that
>   1)PMO::GetVolume and PMO::SetVolume changed the interface recently,
>     so the old GetVolume/SetVolume implementations are not recognized as
>     inherited virtual methods. They are abstract methods in PMO.
>   2)The file got somehow polluted, it says "PMO::GetPrefInt32(kVolumePref,
>     and such.
> I had the same problem with the beos soundcardpmo.cpp. The solution is
> to implement the methods with the correct interface. They should look like,
> void
> SoundcardPMO::GetVolume(int32 &left, int32 &right)
> {
>       // fill the volume levels in left and right.
> }
> void
> SoundcardPMO::SetVolume(int32 left, int32 right)
> {
> }

I changed the source files above (only adding the int32 stuff)

gmake -f Makefile-plugins - plugins-cc
gmake[1]: Entering directory `/home/steve/freeamp'
c++ -I. -I. -I./config -DUNIX_LIBDIR=\"/usr/local/lib\" -Dsolaris -I./lib/gdbm -
I./base/include -Iconfig -I./io/include -I./ui/include -I./lmc/include -I./base/
unix/include -I./base/unix/solaris/include -I./io/soundcard/unix/solaris/include
 -I./ui/lcd/include -I./ui/irman/include -I./lmc/xingmp3/include -I./lmc/cd/incl
ude -I./plm/portable/pmp300/sba -I./lib/xml/include -I./lib/zlib/include -I./lib
/unzip/include -I./io/cd/include -I./io/cd/unix/include -I./io/wavout/include -I
./lib/http/include -Wall -g -O2  -D_REENTRANT   -fPIC -c io/soundcard/unix/solar
is/src/soundcardpmo.cpp -o io/soundcard/unix/solaris/src/soundcardpmo.o
io/soundcard/unix/solaris/src/soundcardpmo.cpp: In function `class PhysicalMedia
Output * Initialize(FAContext *)':
io/soundcard/unix/solaris/src/soundcardpmo.cpp:50: cannot allocate an object of
type `SoundCardPMO'
io/soundcard/unix/solaris/src/soundcardpmo.cpp:50:   since the following virtual
 functions are abstract:
io/include/pmo.h:74:    void PhysicalMediaOutput::GetVolume(int32 &, int32 &)
io/include/pmo.h:75:    void PhysicalMediaOutput::SetVolume(int, int)
io/soundcard/unix/solaris/src/soundcardpmo.cpp: At top level:
io/soundcard/unix/solaris/src/soundcardpmo.cpp:103: prototype for `void SoundCar
dPMO::SetVolume(int, int)' does not match any in class `SoundCardPMO'
io/soundcard/unix/solaris/include/soundcardpmo.h:68: candidate is: void SoundCar
dPMO::SetVolume(int)
io/soundcard/unix/solaris/src/soundcardpmo.cpp: In method `void SoundCardPMO::Se
tVolume(int, int)':
io/soundcard/unix/solaris/src/soundcardpmo.cpp:108: `v' undeclared (first use th
is function)
io/soundcard/unix/solaris/src/soundcardpmo.cpp:108: (Each undeclared identifier
is reported only once
io/soundcard/unix/solaris/src/soundcardpmo.cpp:108: for each function it appears
 in.)
io/soundcard/unix/solaris/src/soundcardpmo.cpp: At top level:
io/soundcard/unix/solaris/src/soundcardpmo.cpp:115: prototype for `void SoundCar
dPMO::GetVolume(int32 &, int32 &)' does not match any in class `SoundCardPMO'
io/soundcard/unix/solaris/include/soundcardpmo.h:67: candidate is: int32 SoundCa
rdPMO::GetVolume()
io/soundcard/unix/solaris/src/soundcardpmo.cpp: In method `void SoundCardPMO::Ge
tVolume(int32 &, int32 &)':
io/soundcard/unix/solaris/src/soundcardpmo.cpp:125: `return' with a value, in fu
nction returning void
gmake[1]: *** [io/soundcard/unix/solaris/src/soundcardpmo.o] Error 1
gmake[1]: Leaving directory `/home/steve/freeamp'
gmake: *** [plugins-cc] Error 2

Steve

-- 
NetTek Ltd  tel +44-(0)20 7483 1169  fax +44-(0)20 7483 2455
Flat 2,    43 Howitt Road,   Belsize Park,    London NW3 4LU
mobile 07775 755503  Epage [EMAIL PROTECTED] [body only]
_______________________________________________
[EMAIL PROTECTED]
http://www.freeamp.org/mailman/listinfo/freeamp-dev

Reply via email to