13895766dSshatty // **************************************************************************** 23895766dSshatty // 33895766dSshatty // CLayla24.h 43895766dSshatty // 53895766dSshatty // Include file for interfacing with the CLayla24 generic driver class 63895766dSshatty // Set editor tabs to 3 for your viewing pleasure. 73895766dSshatty // 8*626bc4beSJérôme Duval // This file is part of Echo Digital Audio's generic driver library. 9*626bc4beSJérôme Duval // Copyright Echo Digital Audio Corporation (c) 1998 - 2005 10c2ddc71cSJérôme Duval // All rights reserved 11c2ddc71cSJérôme Duval // www.echoaudio.com 12c2ddc71cSJérôme Duval // 13*626bc4beSJérôme Duval // This library is free software; you can redistribute it and/or 14*626bc4beSJérôme Duval // modify it under the terms of the GNU Lesser General Public 15*626bc4beSJérôme Duval // License as published by the Free Software Foundation; either 16*626bc4beSJérôme Duval // version 2.1 of the License, or (at your option) any later version. 17c2ddc71cSJérôme Duval // 18*626bc4beSJérôme Duval // This library is distributed in the hope that it will be useful, 19c2ddc71cSJérôme Duval // but WITHOUT ANY WARRANTY; without even the implied warranty of 20*626bc4beSJérôme Duval // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 21*626bc4beSJérôme Duval // Lesser General Public License for more details. 22c2ddc71cSJérôme Duval // 23*626bc4beSJérôme Duval // You should have received a copy of the GNU Lesser General Public 24*626bc4beSJérôme Duval // License along with this library; if not, write to the Free Software 25*626bc4beSJérôme Duval // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 263895766dSshatty // 273895766dSshatty // **************************************************************************** 283895766dSshatty 293895766dSshatty // Prevent problems with multiple includes 303895766dSshatty #ifndef _LAYLA24OBJECT_ 313895766dSshatty #define _LAYLA24OBJECT_ 323895766dSshatty 33c2ddc71cSJérôme Duval #include "CEchoGalsMTC.h" 343895766dSshatty #include "CLayla24DspCommObject.h" 353895766dSshatty 363895766dSshatty 373895766dSshatty // 383895766dSshatty // Class used for interfacing with the Layla24 audio card. 393895766dSshatty // 40c2ddc71cSJérôme Duval class CLayla24 : public CEchoGalsMTC 413895766dSshatty { 423895766dSshatty public: 433895766dSshatty // 443895766dSshatty // Construction/destruction 453895766dSshatty // 463895766dSshatty CLayla24( PCOsSupport pOsSupport ); 473895766dSshatty virtual ~CLayla24(); 483895766dSshatty 493895766dSshatty // 503895766dSshatty // Setup & initialization methods 513895766dSshatty // 523895766dSshatty virtual ECHOSTATUS InitHw(); 533895766dSshatty 543895766dSshatty // 553895766dSshatty // Adapter information methods 563895766dSshatty // 573895766dSshatty virtual ECHOSTATUS GetCapabilities 583895766dSshatty ( 593895766dSshatty PECHOGALS_CAPS pCapabilities 603895766dSshatty ); 613895766dSshatty 623895766dSshatty // 633895766dSshatty // Audio interface methods 643895766dSshatty // 653895766dSshatty virtual ECHOSTATUS QueryAudioSampleRate 663895766dSshatty ( 673895766dSshatty DWORD dwSampleRate 683895766dSshatty ); 693895766dSshatty 703895766dSshatty // 713895766dSshatty // Get a bitmask of all the clocks the hardware is currently detecting 723895766dSshatty // 733895766dSshatty virtual ECHOSTATUS GetInputClockDetect(DWORD &dwClockDetectBits); 743895766dSshatty 753895766dSshatty // 763895766dSshatty // Overload new & delete so memory for this object is allocated from non-paged memory. 773895766dSshatty // 783895766dSshatty PVOID operator new( size_t Size ); 793895766dSshatty VOID operator delete( PVOID pVoid ); 803895766dSshatty 813895766dSshatty protected: 823895766dSshatty // 833895766dSshatty // Get access to the appropriate DSP comm object 843895766dSshatty // 853895766dSshatty PCLayla24DspCommObject GetDspCommObject() 863895766dSshatty { return( (PCLayla24DspCommObject) m_pDspCommObject ); } 873895766dSshatty 883895766dSshatty }; // class CLayla24 893895766dSshatty 903895766dSshatty typedef CLayla24 * PCLayla24; 913895766dSshatty 923895766dSshatty #endif 933895766dSshatty 943895766dSshatty // *** Layla24.H *** 95