00001 /* Open SoundControl kit in C++ */ 00002 /* Copyright (C) 2002-2004 libOSC++ contributors. See AUTHORS */ 00003 /* */ 00004 /* This library is free software; you can redistribute it and/or */ 00005 /* modify it under the terms of the GNU Lesser General Public */ 00006 /* License as published by the Free Software Foundation; either */ 00007 /* version 2.1 of the License, or (at your option) any later version. */ 00008 /* */ 00009 /* This library is distributed in the hope that it will be useful, */ 00010 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */ 00011 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */ 00012 /* Lesser General Public License for more details. */ 00013 /* */ 00014 /* You should have received a copy of the GNU Lesser General Public */ 00015 /* License along with this library; if not, write to the Free Software */ 00016 /* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ 00017 /* */ 00018 /* For questions regarding this program contact */ 00019 /* Daniel Holth <dholth@fastmail.fm> or visit */ 00020 /* http://wiretap.stetson.edu/ */ 00021 00032 #ifndef LIBOSC_OSCPROCESSOR_H 00033 #define LIBOSC_OSCPROCESSOR_H 00034 00035 #include <iostream> 00036 00037 #include "Processor.h" 00038 #include "OSCNamespace.h" 00039 #include "OSCCallable.h" 00040 #include "OSCUnpacker.h" 00041 00042 00043 class OSCProcessor : public Processor 00044 { 00045 public: 00047 OSCProcessor(); 00048 00050 virtual ~OSCProcessor(); 00051 00065 virtual bool process (const std::string& s, Transmit *const reply); 00066 00067 00075 void setNamespace (OSCNamespace *n); 00076 00077 00082 OSCNamespace* getNamespace (void); 00083 00084 00085 protected: 00086 00087 00088 private: 00089 OSCNamespace *myNamespace; 00090 }; 00091 00092 #endif // #ifndef LIBOSC_OSCPROCESSOR_H 00093 00094 // EOF