MIDIOutControl.hxx
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __MIDIOUTCONTROL__
00023 #define __MIDIOUTCONTROL__
00024
00025 #include "MIDIEnums.hxx"
00026 #include "Array.hxx"
00027 #include "MIDIOut.hxx"
00028 #include "MIDIIOConfig.hxx"
00029
00030 namespace CLAM {
00031
00032 class MIDIOutControl:public MIDIOut
00033 {
00034 private:
00035 Array<FloatInControl*> mMyInControls;
00036
00037
00038
00039
00040 unsigned char mUniqId;
00041
00042
00043 unsigned char* mMessage;
00044 unsigned char mStatusByte;
00045
00046
00047 unsigned char* mReceivedUniqId;
00048
00049
00050 unsigned char* mControlIdToMsgByteId;
00051
00052
00053 unsigned char mMessageSize;
00054
00055
00056
00057
00058
00059
00060 unsigned char mControlledBytes;
00061 unsigned char mControlsReceived;
00062
00063 void InitMembers(void);
00064
00065 void Handle(unsigned char* msg,int size);
00066
00067
00068 void DoControl(unsigned id,TControlData val);
00069 public:
00070 MIDIOutControl();
00071 MIDIOutControl(const MIDIIOConfig &c);
00072
00073 const char * GetClassName() const {return "MIDIOutControl";}
00074
00075 bool ConcreteConfigure(const ProcessingConfig& c)
00076 throw(ErrProcessingObj);
00077 };
00078
00079 }
00080
00081 #endif // MIDIOutControl.hxx
00082