Includes original BDA driver source (headers, C++ implementation, INF installer files), DiSEqC implementation PDF with extracted markdown and SVG vector graphics.
150 lines
4.8 KiB
C++
150 lines
4.8 KiB
C++
/*****************************************************************************
|
|
Company : Shree Ganesha Inc.
|
|
File Name : SkyWalker1CommonDef.h
|
|
Author :
|
|
Date :
|
|
Purpose : File to hold the common definitions for the Driver
|
|
|
|
Revision History:
|
|
===============================================================================
|
|
DATE VERSION AUTHOR REMARK
|
|
===============================================================================
|
|
|
|
XXth April,2009 01 Initial Version
|
|
|
|
*****************************************************************************/
|
|
#ifndef __SKYWALKER1_COMMON_DEF_H
|
|
#define __SKYWALKER1_COMMON_DEF_H
|
|
|
|
/* Include the Library and Other header file */
|
|
/* End of Inclusion the Library and Other header file */
|
|
|
|
/* Macro Definitions */
|
|
#define TUNER_MEM_TAG 'MNUT'
|
|
#define CAPTURE_MEM_TAG 'MPAC'
|
|
|
|
// Implementation GUID for SkyWalker1 Tuner and Capture
|
|
// Must match the KSSTRING used in the installation INFs interface sections
|
|
//Tuner Filter GUID {5C4E764F-AB43-46A9-B21E-8529C70F0A23}
|
|
#define GUID_SKYWALKER_TUNER_FILTER\
|
|
0x5C4E764F, 0xAB43, 0x46A9, 0xB2, 0x1E, 0x85, 0x29, 0xC7, 0x0F, 0x0A, 0x23
|
|
DEFINE_GUIDSTRUCT("5C4E764F-AB43-46A9-B21E-8529C70F0A23", SKYWALKER_TUNER_FILTER);
|
|
#define SKYWALKER_TUNER_FILTER DEFINE_GUIDNAMED(SKYWALKER_TUNER_FILTER)
|
|
|
|
//Capture Filter GUID {0F8F74D9-E524-4D05-BB60-F0C69ACB1756}
|
|
#define GUID_SKYWALKER_CAPTURE_FILTER\
|
|
0x0F8F74D9, 0xE524, 0x4D05, 0xBB, 0x60, 0xF0, 0xC6, 0x9A, 0xCB, 0x17, 0x56
|
|
DEFINE_GUIDSTRUCT("0F8F74D9-E524-4D05-BB60-F0C69ACB1756", SKYWALKER_CAPTURE_FILTER);
|
|
// Defines the SKYWALKER_CAPTURE_FILTER as a GUID.
|
|
#define SKYWALKER_CAPTURE_FILTER DEFINE_GUIDNAMED(SKYWALKER_CAPTURE_FILTER)
|
|
|
|
//Medium GUID {2AEB4A94-FBB7-4FB1-8D74-243B91886EAB}
|
|
#define GUID_SKYWALKER_TUNER_OUT_MEDIUM\
|
|
0x2AEB4A94, 0xFBB7, 0x4FB1, 0x8D, 0x74, 0x24, 0x3B, 0x91, 0x88, 0x6E, 0xAB
|
|
DEFINE_GUIDSTRUCT("2AEB4A94-FBB7-4FB1-8D74-243B91886EAB", SKYWALKER_TUNER_OUT_MEDIUM);
|
|
// Defines the SKYWALKER_TUNER_OUT_MEDIUM as a GUID.
|
|
#define SKYWALKER_TUNER_OUT_MEDIUM DEFINE_GUIDNAMED(SKYWALKER_TUNER_OUT_MEDIUM)
|
|
|
|
#define TRANSPORT_PACKET_SIZE 128 //188
|
|
#define TRANSPORT_PACKET_COUNT 64 //512
|
|
#define NUMBER_OF_FRAMES 8
|
|
#define PACKET_PER_FRAME 2
|
|
|
|
#define SYMBOL_RATE_MIN 1000
|
|
#define SYMBOL_RATE_MAX 45000
|
|
|
|
#define TUNER_FREQ_MIN 800000
|
|
#define TUNER_FREQ_MAX 2250000
|
|
|
|
#define IS_VALID(X) (((X)!=NULL)?true:false)
|
|
|
|
/* End of Macro Definitions */
|
|
|
|
/* Global & Static variables Declaration */
|
|
|
|
// Structure for the Tuner Parameters
|
|
|
|
typedef struct _BDATUNER_DEVICE_PARAMETER
|
|
{
|
|
//Tuner Properties
|
|
ULONG ulCarrierFrequency;
|
|
ULONG ulFrequencyMultiplier;
|
|
ULONG ulBandWidth;
|
|
Polarisation Polarity;
|
|
ULONG ulRange;
|
|
ULONG ulTransponder;
|
|
|
|
//LNB Parameters
|
|
ULONG ulLnbLowLOFrequency;
|
|
ULONG ulLnbHighLOFrequency;
|
|
ULONG ulLnbSwitchFrequency;
|
|
|
|
//Demodulator Properties
|
|
ULONG ulInnerFecType;
|
|
BinaryConvolutionCodeRate InnerFecRate;
|
|
ULONG ulOuterFecType;
|
|
BinaryConvolutionCodeRate OuterFecRate;
|
|
ModulationType CurrentModulationType;
|
|
TransmissionMode CurrentTransmissionMode;
|
|
GuardInterval CurrentGuardInterval;
|
|
SpectralInversion CurrentSpectralInversion;
|
|
ULONG ulSymbolRate;
|
|
|
|
} BDATUNER_DEVICE_PARAMETER, * PBDATUNER_DEVICE_PARAMETER;
|
|
|
|
|
|
// Define a structure that represents the underlying device status.
|
|
//
|
|
typedef struct _BDATUNER_DEVICE_STATUS
|
|
{
|
|
//Tuner Status
|
|
DWORD dwSignalStrength;
|
|
DWORD dwSignalQuality;
|
|
BOOLEAN fCarrierPresent;
|
|
|
|
//Demodulator Status
|
|
BOOLEAN fSignalLocked;
|
|
} BDATUNER_DEVICE_STATUS, * PBDATUNER_DEVICE_STATUS;
|
|
|
|
// ICaptureSink:
|
|
//
|
|
// This is a capture sink interface. The device level calls back the
|
|
// CompleteMappings method passing the number of completed mappings for
|
|
// the capture pin. This method is called during the device DPC.
|
|
|
|
class ICaptureSink
|
|
{
|
|
public:
|
|
|
|
virtual void ReleaseStream (IN ULONG ulStreamIndex) = 0;
|
|
};
|
|
|
|
/* End of Global & Static variables Declaration */
|
|
|
|
/* External Variable Declaration */
|
|
extern const BDA_FILTER_TEMPLATE TunerFilterTemplate;
|
|
extern const BDA_FILTER_TEMPLATE SkyWalker1CaptureTemplate;
|
|
extern const KSFILTER_DESCRIPTOR SkyWalker1TunerFilterDescriptor;
|
|
extern const KSFILTER_DESCRIPTOR SkyWalker1CaptureFilterDescriptor;
|
|
|
|
/* End of External Variable Declaration */
|
|
|
|
/* Declare Enumerations here */
|
|
typedef enum _HARDWARE_STATE {
|
|
|
|
HardwareStopped = 0,
|
|
HardwarePaused,
|
|
HardwareRunning
|
|
|
|
} HARDWARE_STATE, *PHARDWARE_STATE;
|
|
|
|
/* End of Enumeration declaration */
|
|
|
|
/* Function Prototypes */
|
|
/* End of Function prototype definitions */
|
|
|
|
#endif // __SKYWALKER1_COMMON_DEF_H
|
|
|
|
|
|
|