// **************************************************************************** // // CMia.H // // Include file for interfacing with the CMia generic driver class // Set editor tabs to 3 for your viewing pleasure. // // ---------------------------------------------------------------------------- // // Copyright Echo Digital Audio Corporation (c) 1998 - 2002 // All rights reserved // www.echoaudio.com // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal with the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: // // - Redistributions of source code must retain the above copyright // notice, this list of conditions and the following disclaimers. // // - Redistributions in binary form must reproduce the above copyright // notice, this list of conditions and the following disclaimers in the // documentation and/or other materials provided with the distribution. // // - Neither the name of Echo Digital Audio, nor the names of its // contributors may be used to endorse or promote products derived from // this Software without specific prior written permission. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. // IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR // ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE // SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE. // // **************************************************************************** // Prevent problems with multiple includes #ifndef _MIAOBJECT_ #define _MIAOBJECT_ #include "CEchoGals.h" #include "CMiaDspCommObject.h" // // Class used for interfacing with the Mia audio card. // class CMia : public CEchoGals { public: // // Construction/destruction // CMia( PCOsSupport pOsSupport ); virtual ~CMia(); // // Setup & initialization methods // virtual ECHOSTATUS InitHw(); // // Adapter information methods // // // Return the capabilities of this card; card type, card name, // # analog inputs, # analog outputs, # digital channels, // # MIDI ports and supported clocks. // See ECHOGALS_CAPS definition above. // virtual ECHOSTATUS GetCapabilities ( PECHOGALS_CAPS pCapabilities ); // // Audio Interface methods // virtual ECHOSTATUS QueryAudioSampleRate ( DWORD dwSampleRate ); // // Get a bitmask of all the clocks the hardware is currently detecting // virtual ECHOSTATUS GetInputClockDetect(DWORD &dwClockDetectBits); // // Adjust all the output pipe levels for a particular output bus // virtual ECHOSTATUS AdjustPipesOutForBusOut(WORD wBusOut,int iBusOutGain); // // Overload new & delete so memory for this object is allocated from // non-paged memory. // PVOID operator new( size_t Size ); VOID operator delete( PVOID pVoid ); protected: // // Get access to the appropriate DSP comm object // PCMiaDspCommObject GetDspCommObject() { return( (PCMiaDspCommObject) m_pDspCommObject ); } }; // class CMia typedef CMia * PCMia; #endif // *** Mia.H ***