FreewheelingNetworkPlayer.hxx

Go to the documentation of this file.
00001 #ifndef _FreewheelingNetworkPlayer_hxx_
00002 #define _FreewheelingNetworkPlayer_hxx_
00003 
00004 #include "NetworkPlayer.hxx"
00005 #include "AudioSource.hxx"
00006 #include "AudioSink.hxx"
00007 
00008 namespace CLAM
00009 {
00010 
00011 
00012 class FreewheelingNetworkPlayer : public NetworkPlayer
00013 {
00014         std::vector<std::string> _filenames;
00015         bool _enableLoopInputWavs;
00016         float _resultWavsTime;
00017 
00018 
00019 public:
00020         FreewheelingNetworkPlayer()
00021                 : _enableLoopInputWavs(false)
00022                 , _resultWavsTime(0.0)
00023         {}
00024         void AddInputFile( const std::string& );
00025         void AddOutputFile( const std::string& );
00026         // base class (virtual) interface:
00027         bool IsWorking() const;
00028         std::string NonWorkingReason() const;
00029         virtual void Start();
00030         virtual void Stop();
00031 
00032         void ProcessInputFile();
00033 
00034 // specific interface - not inherited   
00035         void EnableLoopInputWavs() 
00036         {
00037                 _enableLoopInputWavs=true;
00038         }
00039         void SetResultWavsTime( double time)
00040         {
00041                 _resultWavsTime=time;
00042         }
00043 };
00044 
00045 }
00046 #endif
00047 

Generated on Tue Aug 12 22:33:42 2008 for CLAM by  doxygen 1.5.5