00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00031 #ifndef OSC_INPUTSTREAM_H
00032 #define OSC_INPUTSTREAM_H
00033
00034 #include "OSCCallable.h"
00035 #include "Transmit.h"
00036
00037 #ifdef LIBOSC_DEBUG
00038 #include <iostream>
00039 #endif
00040
00041 class InputStream : public OSCCallable
00042 {
00043 private:
00044 Transmit* myTransmit;
00045 public:
00046 InputStream() { this -> myTransmit = NULL; }
00047 InputStream(Transmit* transmit) { this -> setTransmit(transmit); }
00048
00049 virtual ~InputStream() { delete myTransmit; }
00050
00051 virtual void call(const std::string& data, Transmit *const reply)
00052 {
00053 #ifdef LIBOSC_DEBUG
00054 std::cout << "InputStream::call: " << this->getName() << " sending to "
00055 << myTransmit->getName() << std::endl;
00056 #endif
00057 myTransmit -> transmit(data);
00058 }
00059
00060 void setTransmit(Transmit* transmit) { this -> myTransmit = transmit; }
00061 Transmit* getTransmit() { return this -> myTransmit; }
00062 };
00063
00064 #endif