📄 tuner.idl
字号:
[out, retval] IComponent **NewComponent
);
};
//////////////////////////////////////////////////////////////////////////////////////
[
object,
nonextensible,
uuid(1493E353-1EB6-473c-802D-8E6B8EC9D2A9),
dual,
oleautomation,
helpstring("MPEG2 Component Interface"),
pointer_default(unique)
]
interface IMPEG2Component : IComponent
{
[propget, id(DISPID_TUNER_C_MP2_PID),
helpstring("MPEG2 Packet ID for this Substream")]
HRESULT PID(
[out, retval] long *PID
);
[propput, id(DISPID_TUNER_C_MP2_PID),
helpstring("MPEG2 Packet ID for this Substream")]
HRESULT PID(
[in] long PID
);
[propget, id(DISPID_TUNER_C_MP2_PCRPID),
helpstring("MPEG2 Packet ID for this Substream's Timestamps")]
HRESULT PCRPID(
[out, retval] long *PCRPID
);
[propput, id(DISPID_TUNER_C_MP2_PCRPID),
helpstring("MPEG2 Packet ID for this Substream's Timestamps")]
HRESULT PCRPID(
[in] long PCRPID
);
// program number provides reverse lookup to PAT
[propget, id(DISPID_TUNER_C_MP2_PROGNO),
helpstring("MPEG2 Program Number")]
HRESULT ProgramNumber(
[out, retval] long *ProgramNumber
);
[propput, id(DISPID_TUNER_C_MP2_PROGNO),
helpstring("MPEG2 Program Number")]
HRESULT ProgramNumber(
[in] long ProgramNumber
);
};
//////////////////////////////////////////////////////////////////////////////////////
[
hidden, restricted,
object,
uuid(2A6E2939-2595-11d3-B64C-00C04F79498E),
pointer_default(unique)
]
interface IEnumComponents : IUnknown
{
HRESULT Next(
[in] ULONG celt,
[out, size_is(celt), length_is(*pceltFetched)]
IComponent** rgelt,
[out] ULONG* pceltFetched
);
HRESULT Skip(
[in] ULONG celt
);
HRESULT Reset(void);
HRESULT Clone(
[out] IEnumComponents** ppEnum
);
}
//////////////////////////////////////////////////////////////////////////////////////
// Component Container
//////////////////////////////////////////////////////////////////////////////////////
[
object,
nonextensible,
uuid(FCD01846-0E19-11d3-9D8E-00C04F72D980),
dual,
oleautomation,
helpstring("Component Collection Interface"),
pointer_default(unique)
]
interface IComponents : IDispatch
{
[propget, helpstring("Number of items in the collection")]
HRESULT Count(
[out, retval] long *Count
);
[propget, id(DISPID_NEWENUM), hidden, restricted]
HRESULT _NewEnum(
[out, retval] IEnumVARIANT **ppNewEnum
);
[hidden, restricted, helpstring("Convenience Function for Use with C")]
HRESULT EnumComponents(
[out, retval] IEnumComponents **ppNewEnum
);
[id(DISPID_VALUE),
propget,
helpstring("Get the Component at the specified index")]
HRESULT Item(
[in] VARIANT Index,
[out, retval] IComponent **ppComponent
);
[id(DISPID_ADDITEM),
helpstring("Add the Component to the collection")]
HRESULT Add(
[in] IComponent *Component,
[out, retval] VARIANT *NewIndex
);
[id(DISPID_REMOVEITEM),
helpstring("Remove the Component at the specified index")]
HRESULT Remove(
[in] VARIANT Index
);
[helpstring("Copy the collection")]
HRESULT Clone([out, retval] IComponents **NewList);
};
//////////////////////////////////////////////////////////////////////////////////////
// Component Container
//////////////////////////////////////////////////////////////////////////////////////
// this separates the what(general tune request properties) from the where
[
object,
nonextensible,
uuid(286D7F89-760C-4F89-80C4-66841D2507AA),
dual,
oleautomation,
helpstring("Generic Locator Information"),
pointer_default(unique)
]
interface ILocator : IDispatch
{
[propget, id(DISPID_TUNER_L_CARRFREQ), helpstring("Carrier Frequency(KHz)")]
HRESULT CarrierFrequency(
[out, retval] long* Frequency
);
[propput, id(DISPID_TUNER_L_CARRFREQ), helpstring("Carrier Frequency(KHz)")]
HRESULT CarrierFrequency(
[in] long Frequency
);
[propget, id(DISPID_TUNER_L_INNERFECMETHOD), helpstring("Inner Fec Type")]
HRESULT InnerFEC(
[out, retval] FECMethod* FEC
);
[propput, id(DISPID_TUNER_L_INNERFECMETHOD), helpstring("Inner Fec Type")]
HRESULT InnerFEC(
[in] FECMethod FEC
);
[propget, id(DISPID_TUNER_L_INNERFECRATE), helpstring("Inner Fec Rate")]
HRESULT InnerFECRate(
[out, retval] BinaryConvolutionCodeRate* FEC
);
[propput, id(DISPID_TUNER_L_INNERFECRATE), helpstring("Inner Fec Rate")]
HRESULT InnerFECRate(
[in] BinaryConvolutionCodeRate FEC
);
[propget, id(DISPID_TUNER_L_OUTERFECMETHOD), helpstring("Outer Fec Type")]
HRESULT OuterFEC(
[out, retval] FECMethod* FEC
);
[propput, id(DISPID_TUNER_L_OUTERFECMETHOD), helpstring("Outer Fec Type")]
HRESULT OuterFEC(
[in] FECMethod FEC
);
[propget, id(DISPID_TUNER_L_OUTERFECRATE), helpstring("Outer Fec Rate")]
HRESULT OuterFECRate(
[out, retval] BinaryConvolutionCodeRate* FEC
);
[propput, id(DISPID_TUNER_L_OUTERFECRATE), helpstring("Outer Fec Rate")]
HRESULT OuterFECRate(
[in] BinaryConvolutionCodeRate FEC
);
[propget, id(DISPID_TUNER_L_MOD), helpstring("Modulation Type")]
HRESULT Modulation(
[out, retval] ModulationType* Modulation
);
[propput, id(DISPID_TUNER_L_MOD), helpstring("Modulation Type")]
HRESULT Modulation(
[in] ModulationType Modulation
);
[propget, id(DISPID_TUNER_L_SYMRATE), helpstring("Modulation Symbol Rate")]
HRESULT SymbolRate(
[out, retval] long* Rate
);
[propput, id(DISPID_TUNER_L_SYMRATE), helpstring("Modulation Symbol Rate")]
HRESULT SymbolRate(
[in] long Rate
);
[id(DISPID_TUNER_L_CLONE), helpstring("Copy the Locator")]
HRESULT Clone([out, retval] ILocator **NewLocator);
};
//////////////////////////////////////////////////////////////////////////////////////
[
object,
hidden,
nonextensible,
uuid(BF8D986F-8C2B-4131-94D7-4D3D9FCC21EF),
dual,
oleautomation,
helpstring("ATSC Locator Information"),
pointer_default(unique)
]
interface IATSCLocator : ILocator
{
[propget, id(DISPID_TUNER_L_ATSC_PHYS_CHANNEL),
helpstring("Physical Channel")]
HRESULT PhysicalChannel(
[out, retval] long *PhysicalChannel
);
[propput, id(DISPID_TUNER_L_ATSC_PHYS_CHANNEL),
helpstring("Physical Channel")]
HRESULT PhysicalChannel(
[in] long PhysicalChannel
);
[propget, id(DISPID_TUNER_L_ATSC_TSID),
helpstring("Transport Stream ID")]
HRESULT TSID(
[out, retval] long *TSID
);
[propput, id(DISPID_TUNER_L_ATSC_TSID),
helpstring("Transport Stream ID")]
HRESULT TSID(
[in] long TSID
);
};
//////////////////////////////////////////////////////////////////////////////////////
[
object,
hidden,
nonextensible,
uuid(8664DA16-DDA2-42ac-926A-C18F9127C302),
dual,
oleautomation,
helpstring("DVB Terrestrial Locator Information"),
pointer_default(unique)
]
interface IDVBTLocator : ILocator
{
[propget, id(DISPID_TUNER_L_DVBT_BANDWIDTH), helpstring("Bandwidth")]
HRESULT Bandwidth(
[out, retval] long* BandWidthVal
);
[propput, id(DISPID_TUNER_L_DVBT_BANDWIDTH), helpstring("Bandwidth")]
HRESULT Bandwidth(
[in] long BandwidthVal
);
[propget, id(DISPID_TUNER_L_DVBT_LPINNERFECMETHOD), helpstring("Inner Fec Type for Low Priority Stream")]
HRESULT LPInnerFEC(
[out, retval] FECMethod* FEC
);
[propput, id(DISPID_TUNER_L_DVBT_LPINNERFECMETHOD), helpstring("Inner Fec Type for Low Priority Stream")]
HRESULT LPInnerFEC(
[in] FECMethod FEC
);
[propget, id(DISPID_TUNER_L_DVBT_LPINNERFECRATE), helpstring("Inner Fec Rate for Low Priority Stream")]
HRESULT LPInnerFECRate(
[out, retval] BinaryConvolutionCodeRate* FEC
);
[propput, id(DISPID_TUNER_L_DVBT_LPINNERFECRATE), helpstring("Inner Fec Rate for Low Priority Stream")]
HRESULT LPInnerFECRate(
[in] BinaryConvolutionCodeRate FEC
);
[propget, id(DISPID_TUNER_L_DVBT_HALPHA), helpstring("Hierarchical Alpha")]
HRESULT HAlpha(
[out, retval] HierarchyAlpha* Alpha
);
[propput, id(DISPID_TUNER_L_DVBT_HALPHA), helpstring("Hierarchical Alpha")]
HRESULT HAlpha(
[in] HierarchyAlpha Alpha
);
[propget, id(DISPID_TUNER_L_DVBT_GUARDINTERVAL), helpstring("Guard Interval")]
HRESULT Guard(
[out, retval] GuardInterval* GI
);
[propput, id(DISPID_TUNER_L_DVBT_GUARDINTERVAL), helpstring("Guard Interval")]
HRESULT Guard(
[in] GuardInterval GI
);
[propget, id(DISPID_TUNER_L_DVBT_TRANSMISSIONMODE), helpstring("Transmission Mode")]
HRESULT Mode(
[out, retval] TransmissionMode* mode
);
[propput, id(DISPID_TUNER_L_DVBT_TRANSMISSIONMODE), helpstring("Transmission Mode")]
HRESULT Mode(
[in] TransmissionMode mode
);
[propget, id(DISPID_TUNER_L_DVBT_INUSE), helpstring("Hierarchical Alpha")]
HRESULT OtherFrequencyInUse(
[out, retval] VARIANT_BOOL* OtherFrequencyInUseVal
);
[propput, id(DISPID_TUNER_L_DVBT_INUSE), helpstring("Hierarchical Alpha")]
HRESULT OtherFrequencyInUse(
[in] VARIANT_BOOL OtherFrequencyInUseVal
);
};
//////////////////////////////////////////////////////////////////////////////////////
[
object,
hidden,
nonextensible,
uuid(3D7C353C-0D04-45f1-A742-F97CC1188DC8),
dual,
oleautomation,
helpstring("DVB Satellite Locator Information"),
pointer_default(unique)
]
interface IDVBSLocator : ILocator
{
[propget, id(DISPID_TUNER_L_DVBS_POLARISATION), helpstring("Signal Polarisation Type")]
HRESULT SignalPolarisation(
[out, retval] Polarisation* PolarisationVal
);
[propput, id(DISPID_TUNER_L_DVBS_POLARISATION), helpstring("Signal Polarisation Type")]
HRESULT SignalPolarisation(
[in] Polarisation PolarisationVal
);
[propget, id(DISPID_TUNER_L_DVBS_WEST), helpstring("VARIANT_TRUE means orbital position specifies west longitude")]
HRESULT WestPosition(
[out, retval] VARIANT_BOOL* WestLongitude
);
[propput, id(DISPID_TUNER_L_DVBS_WEST), helpstring("VARIANT_TRUE means orbital position specifies west longitude")]
HRESULT WestPosition(
[in] VARIANT_BOOL WestLongitude
);
[propget, id(DISPID_TUNER_L_DVBS_ORBITAL), helpstring("Longitude in tenths of a degree")]
HRESULT OrbitalPosition(
[out, retval] long* longitude
);
[propput, id(DISPID_TUNER_L_DVBS_ORBITAL), helpstring("Longitude in tenths of a degree")]
HRESULT OrbitalPosition(
[in] long longitude
);
[propget, id(DISPID_TUNER_L_DVBS_AZIMUTH), helpstring("Azimuth in tenths of a degree")]
HRESULT Azimuth(
[out, retval] long* Azimuth
);
[propput, id(DISPID_TUNER_L_DVBS_AZIMUTH), helpstring("Azimuth
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -