phantom_api.h
来自「QPSK Tuner details, for conexant chipset」· C头文件 代码 · 共 156 行
H
156 行
#ifndef PHANTOM_API_H_DEFINED
#define PHANTOM_API_H_DEFINED
/* phantom_api.h */
/*+++ *******************************************************************\
*
* Abstract:
*
* Contains prototypes for the Phantom API functions.
*
* Created: 3/30/2004
*
* Author: Amarnath Puttur
*
* 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) 2004 Conexant Systems, Inc.
* All rights reserved.
*
\******************************************************************* ---*/
#include "phantom_cmd.h" /* Phantom command interface */
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
/*******************************************************************************************************/
/* API prototypes */
/*******************************************************************************************************/
/* High-level APIs */
BOOL PHANTOM_InitEnvironment(PHANTOM_NIM* p_nim,
unsigned long demod_handle,
PHANTOM_MULTI_WRITE_SB SBMultiWrite,
PHANTOM_WRITE_SB SBwrite,
PHANTOM_READ_SB SBread,
unsigned long crystal_frequency,
PHANTOM_TUNER_REF_CLOCKOUT_DIV tuner_ref_clkout_div,
unsigned char pll_multiplier,
PHANTOM_MPEG_OUT* p_mpeg);
BOOL PHANTOM_ChangeChannel(PHANTOM_NIM *p_nim,PHANTOM_CHANOBJ *p_channel_object);
BOOL PHANTOM_Monitor(PHANTOM_NIM *p_nim,PHANTOM_ACQ_STATE *acq_state,PHANTOM_LOCKIND *lock_ind);
BOOL PHANTOM_ReleaseEnvironment(PHANTOM_NIM *p_nim);
BOOL PHANTOM_GetBinCyclesCounter(PHANTOM_NIM* p_nim, unsigned char* p_bin_cycles);
BOOL PHANTOM_VCOHelper(PHANTOM_NIM *p_nim, unsigned long programmed_freq, unsigned long desired_freq, unsigned long *p_suggested_freq);
/* Low-level APIs */
BOOL PHANTOM_GetChipInfo(PHANTOM_NIM* p_nim,
char** p_demod_string,
unsigned long* p_chip_version,
unsigned long* p_chip_id,
unsigned long* p_board_version,
char** p_firmware_version);
BOOL PHANTOM_GetDriverVersion(PHANTOM_NIM *p_nim, PHANTOM_DRIVER_VERSION *p_driver_version);
BOOL PHANTOM_SetOutputOptions(PHANTOM_NIM *p_nim,PHANTOM_MPEG_OUT *p_mpeg_out);
BOOL PHANTOM_GetSampleFrequency(PHANTOM_NIM *p_nim,unsigned long *p_sample_rate);
BOOL PHANTOM_GetSpectralInversion(PHANTOM_NIM *p_nim,PHANTOM_SPEC_INV *p_spec_inv);
BOOL PHANTOM_GetLockState(PHANTOM_NIM *p_nim,PHANTOM_ACQ_STATE *p_acq_state);
BOOL PHANTOM_SetInterruptOptions(PHANTOM_NIM *p_nim, PHANTOM_INTR_OPTIONS interopts);
BOOL PHANTOM_GetPendingInterrupts(PHANTOM_NIM *p_nim, PHANTOM_INTR_OPTIONS *p_interopts);
BOOL PHANTOM_ClearPendingInterrupts(PHANTOM_NIM *p_nim,PHANTOM_INTR_OPTIONS interopts);
BOOL PHANTOM_GetLockIndicators(PHANTOM_NIM *p_nim,PHANTOM_LOCKIND *p_lockind);
#if PHANTOM_INCLUDE_DISEQC2
BOOL PHANTOM_DiseqcInitialize(PHANTOM_NIM *p_nim,
PHANTOM_LNB_RX_EXP_WINDOW reply_expiration_window,
unsigned char lnb_tone_amplitude,
unsigned char lnb_tone_frequency,
unsigned char lnb_tone_detection_thresh,
PHANTOM_LNB_TONEBURST_EN_SET lnb_tone_burst_enable,
PHANTOM_LNBMODE_SET lnb_mode);
BOOL PHANTOM_DiseqcReceiveMessage(PHANTOM_NIM *p_nim,
unsigned char *p_buffer,
unsigned char buffer_len,
unsigned char *p_received_len,
unsigned char *p_parity_errors,
unsigned char *p_reply_errors);
BOOL PHANTOM_DiseqcSendMessage(PHANTOM_NIM *p_nim,
unsigned char *p_message,
unsigned char message_length,
BOOL last_message,
PHANTOM_RXMODE reply_mode,
PHANTOM_LNB_BURST burst_tone);
BOOL PHANTOM_DiseqcSendToneBurst(PHANTOM_NIM *p_nim, PHANTOM_LNB_BURST burst_mode);
#endif /* PHANTOM_INCLUDE_DISEQC2 */
BOOL PHANTOM_GetChannelEsNo(PHANTOM_NIM *p_nim, unsigned short *p_esno);
BOOL PHANTOM_GetCTL(PHANTOM_NIM *p_nim,long *p_ctl);
BOOL PHANTOM_GetAGCAcc(PHANTOM_NIM *p_nim,PHANTOM_AGCACC *p_agc_acc, signed char *p_estimated_power, unsigned char *p_saturated);
BOOL PHANTOM_GetBTL(PHANTOM_NIM *p_nim,long *p_btl);
BOOL PHANTOM_GetLNBOffset(PHANTOM_NIM *p_nim,long *p_lnb_offset);
BOOL PHANTOM_GetFrequencyOffset(PHANTOM_NIM *p_nim, signed long *p_frequency_offset);
BOOL PHANTOM_GetGPIOIn (PHANTOM_NIM *p_nim, unsigned char *p_GPI, unsigned char GPI_mask);
BOOL PHANTOM_SetGPIOMode (PHANTOM_NIM *p_nim, unsigned char mode_sel);
BOOL PHANTOM_GetViterbiRate (PHANTOM_NIM *p_nim, PHANTOM_CODERATE *p_code_rate);
BOOL PHANTOM_GetEffectiveFrequency (PHANTOM_NIM *p_nim, unsigned long *p_effect_frequency);
BOOL PHANTOM_GetTunerPLLFrequency (PHANTOM_NIM *p_nim, unsigned long *pll_frequency);
BOOL PHANTOM_SetLNBDC(PHANTOM_NIM *p_nim,PHANTOM_LNBDC_LEVEL lnb_dc_level);
BOOL PHANTOM_SetLNBTone(PHANTOM_NIM *p_nim,PHANTOM_LNBTONE lnbtone);
BOOL PHANTOM_DownloadFirmware(PHANTOM_NIM* p_nim, PHANTOM_SW_DOWNLOAD *p_download);
#if PHANTOM_INCLUDE_BER
BOOL
PHANTOM_BERControl (PHANTOM_NIM* p_nim, PHANTOM_BER_WINDOW_SEL window_size1, PHANTOM_BER_WINDOW_SEL window_size2);
BOOL
PHANTOM_GetBER (PHANTOM_NIM* p_nim,
unsigned long* p_corr_bit_err_rate,
unsigned short* p_uncorr_frame_err_rate,
unsigned short* p_ber_window_adjustment,
PHANTOM_MSTATUS* p_mstatus);
BOOL
PHANTOM_GetCRCPER (PHANTOM_NIM* p_nim,
unsigned short* p_crc_frame_err_rate,
unsigned short* p_crc_window_adjustment,
PHANTOM_MSTATUS* p_mstatus);
#endif /* PHANTOM_INCLUDE_BER */
BOOL PHANTOM_GetStatus (PHANTOM_NIM* p_nim, PHANTOM_STATUSPARAM* p_status);
BOOL PHANTOM_AGCControl(PHANTOM_NIM* p_nim, PHANTOM_AGC_CONTROL mode, unsigned short agc_value);
BOOL PHANTOM_EnableCorrection(PHANTOM_NIM *p_nim, BOOL b_enable_rs_or_bch_corr);
BOOL PHANTOM_SetTunerGainThreshold(PHANTOM_NIM* p_nim, signed char threshold_dBm);
BOOL PHANTOM_GetTunerGainThreshold(PHANTOM_NIM* p_nim, signed char* p_threshold_dBm);
#ifdef __cplusplus
}
#endif
/*******************************************************************************************************/
#endif /* #ifndef PHANTOM_API_H_DEFINED */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?