1 /* 2 <codex> 3 <abstract>Part of CoreAudio Utility Classes</abstract> 4 </codex> 5 */ 6 #ifndef __AUMIDIEffectBase_h__ 7 #define __AUMIDIEffectBase_h__ 8 9 #include "AUMIDIBase.h" 10 #include "AUEffectBase.h" 11 12 // ________________________________________________________________________ 13 // AUMIDIEffectBase 14 // 15 /*! @class AUMIDIEffectBase */ 16 class AUMIDIEffectBase : public AUEffectBase, public AUMIDIBase { 17 public: 18 /*! @ctor AUMIDIEffectBase */ 19 AUMIDIEffectBase( AudioComponentInstance inInstance, 20 bool inProcessesInPlace = false ); 21 /*! @method MIDIEvent */ MIDIEvent(UInt32 inStatus,UInt32 inData1,UInt32 inData2,UInt32 inOffsetSampleFrame)22 virtual OSStatus MIDIEvent(UInt32 inStatus, 23 UInt32 inData1, 24 UInt32 inData2, 25 UInt32 inOffsetSampleFrame) 26 { 27 return AUMIDIBase::MIDIEvent (inStatus, inData1, inData2, inOffsetSampleFrame); 28 } 29 30 /*! @method SysEx */ SysEx(const UInt8 * inData,UInt32 inLength)31 virtual OSStatus SysEx(const UInt8 * inData, 32 UInt32 inLength) 33 { 34 return AUMIDIBase::SysEx (inData, inLength); 35 } 36 37 /*! @method GetPropertyInfo */ 38 virtual OSStatus GetPropertyInfo(AudioUnitPropertyID inID, 39 AudioUnitScope inScope, 40 AudioUnitElement inElement, 41 UInt32 & outDataSize, 42 Boolean & outWritable); 43 44 /*! @method GetProperty */ 45 virtual OSStatus GetProperty( AudioUnitPropertyID inID, 46 AudioUnitScope inScope, 47 AudioUnitElement inElement, 48 void * outData); 49 /*! @method SetProperty */ 50 virtual OSStatus SetProperty( AudioUnitPropertyID inID, 51 AudioUnitScope inScope, 52 AudioUnitElement inElement, 53 const void * inData, 54 UInt32 inDataSize); 55 56 #if !CA_USE_AUDIO_PLUGIN_ONLY 57 #if !TARGET_OS_IPHONE 58 // component dispatcher 59 /*! @method ComponentEntryDispatch */ 60 static OSStatus ComponentEntryDispatch( ComponentParameters * params, 61 AUMIDIEffectBase * This); 62 #endif 63 #endif 64 }; 65 66 #endif // __AUMIDIEffectBase_h__ 67