1 // **************************************************************************** 2 // 3 // CMona.H 4 // 5 // Include file for interfacing with the CMona generic driver class 6 // Set editor tabs to 3 for your viewing pleasure. 7 // 8 // ---------------------------------------------------------------------------- 9 // 10 // ---------------------------------------------------------------------------- 11 // 12 // Copyright Echo Digital Audio Corporation (c) 1998 - 2004 13 // All rights reserved 14 // www.echoaudio.com 15 // 16 // This file is part of Echo Digital Audio's generic driver library. 17 // 18 // Echo Digital Audio's generic driver library is free software; 19 // you can redistribute it and/or modify it under the terms of 20 // the GNU General Public License as published by the Free Software Foundation. 21 // 22 // This program is distributed in the hope that it will be useful, 23 // but WITHOUT ANY WARRANTY; without even the implied warranty of 24 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 // GNU General Public License for more details. 26 // 27 // You should have received a copy of the GNU General Public License 28 // along with this program; if not, write to the Free Software 29 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, 30 // MA 02111-1307, USA. 31 // 32 // **************************************************************************** 33 34 // Prevent problems with multiple includes 35 #ifndef _MONAOBJECT_ 36 #define _MONAOBJECT_ 37 38 #include "CEchoGals.h" 39 #include "CMonaDspCommObject.h" 40 41 // 42 // Class used for interfacing with the Darla audio card. 43 // 44 class CMona : public CEchoGals 45 { 46 public: 47 // 48 // Construction/destruction 49 // 50 CMona( PCOsSupport pOsSupport ); 51 52 virtual ~CMona(); 53 54 // 55 // Setup & initialization methods 56 // 57 58 virtual ECHOSTATUS InitHw(); 59 60 // 61 // Adapter information methods 62 // 63 64 // 65 // Return the capabilities of this card; card type, card name, 66 // # analog inputs, # analog outputs, # digital channels, 67 // # MIDI ports and supported clocks. 68 // See ECHOGALS_CAPS definition above. 69 // 70 virtual ECHOSTATUS GetCapabilities 71 ( 72 PECHOGALS_CAPS pCapabilities 73 ); 74 75 // 76 // Audio Interface methods 77 // 78 virtual ECHOSTATUS QueryAudioSampleRate 79 ( 80 DWORD dwSampleRate 81 ); 82 83 // 84 // Get a bitmask of all the clocks the hardware is currently detecting 85 // 86 virtual ECHOSTATUS GetInputClockDetect(DWORD &dwClockDetectBits); 87 88 // 89 // Overload new & delete so memory for this object is allocated from 90 // non-paged memory. 91 // 92 PVOID operator new( size_t Size ); 93 VOID operator delete( PVOID pVoid ); 94 95 protected: 96 // 97 // Get access to the appropriate DSP comm object 98 // 99 PCMonaDspCommObject GetDspCommObject() 100 { return( (PCMonaDspCommObject) m_pDspCommObject ); } 101 }; // class CMona 102 103 typedef CMona * PCMona; 104 105 #endif 106 107 // *** CMona.H *** 108