📄 merlin.h
字号:
/*+++ *******************************************************************\
*
* Copyright and Disclaimer:
*
* ---------------------------------------------------------------
* This software is provided "AS IS" without warranty of any kind,
* either expressed or implied, including but not limited to the
* implied warranties of noninfringement, merchantability and/or
* fitness for a particular purpose.
* ---------------------------------------------------------------
*
* Copyright (c) 2008 Conexant Systems, Inc.
* All rights reserved.
*
\******************************************************************* ---*/
#ifndef _MERLIN_H_
#define _MERLIN_H_
extern "C"
{
#include <wdm.h>
}
#include <windef.h>
#include <unknown.h>
#include <ks.h>
#include <ksmedia.h>
#include "SyncRegIo.h"
#include "colibri.h"
class Device;
class DirectIF;
enum AUDIO_STANDARD
{
AUDIO_STANDARD_NONE =0,
AUDIO_STANDARD_BTSC,
AUDIO_STANDARD_EIAJ,
AUDIO_STANDARD_NICAM_BG,
AUDIO_STANDARD_NICAM_DK,
AUDIO_STANDARD_NICAM_L,
AUDIO_STANDARD_NICAM_I,
AUDIO_STANDARD_A2_M
};
class Merlin
{
public:
USHORT GetFWVersion(){return _audio_fw_version;}
Merlin(Device *p_device,DEVICE_OBJECT* p_do, SyncRegIo* p_registers, DirectIF *p_DIF);
~Merlin();
enum AUDIO_INPUT
{
AUDIO_INPUT_MUTE,
AUDIO_INPUT_LINE,
AUDIO_INPUT_TUNER_TV,
AUDIO_INPUT_SPDIF,
AUDIO_INPUT_TUNER_FM
};
VOID setAudioInput(AUDIO_INPUT audio_input);
AUDIO_INPUT getAudioInput();
DWORD getAvailableModes();
DWORD getCurrentMode();
VOID setTVAudioMode(DWORD new_mode);
DWORD getCapabilities();
VOID powerUp();
VOID powerDown();
VOID setAudioStandard(AUDIO_STANDARD audio_standard);
VOID initialize();
VOID setFrequency(DWORD frequency);
VOID GetVersion();
VOID notifyPreChannelChange();
VOID notifyPostChannelChange();
NTSTATUS uploadFirmware();
BOOLEAN isFMLocked();
protected:
NTSTATUS openFirmwareFile(HANDLE* p_file);
VOID setupFM();
private:
SyncRegIo* _p_registers;
DWORD _tv_audio_preferred_mode;
AUDIO_INPUT _current_audio_input;
AUDIO_STANDARD _audio_standard;
DWORD _frequency;
USHORT _audio_fw_version;
Device* _p_device;
DirectIF* _p_DIF;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -