TSDuck v3.46-4930
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::DirectShowTest Class Reference

#include <tsDirectShowTest.h>

Public Types

enum  TestType {
  NONE ,
  LIST_DEVICES ,
  ENUMERATE_DEVICES ,
  TUNING_SPACES ,
  BDA_TUNERS
}

Public Member Functions

 DirectShowTest (std::ostream &output, Report &report)
bool displayDevicesByCategory (const ::GUID &category, const UString &name, bool details=true, const UString &margin=UString())
void displayInterfaces (::IUnknown *object, const UString &margin=UString())
void displayObject (::IUnknown *object, const UString &margin=UString())
bool displayTuningSpaces (const UString &margin=UString())
void enumerateDevices (const UString &margin=UString())
void listDevices (const UString &margin=UString())
void runTest (TestType type)
void testBDATuners (const UString &margin=UString())
void testTuningSpaces (const UString &margin=UString())

Static Public Member Functions

static const Names & TestNames ()

Detailed Description

A class to perform various tests on DirectShow and BDA (Windows-specific).

Member Enumeration Documentation

◆ TestType

List of DirectShow tests.

Enumerator
NONE 

No test, do nothing.

LIST_DEVICES 

Briel list of most tuner-related DirectShow devices.

ENUMERATE_DEVICES 

Enumerate all tuner-related DirectShow devices.

TUNING_SPACES 

Test available tuning spaces.

BDA_TUNERS 

Test available BDA tuners.

Constructor & Destructor Documentation

◆ DirectShowTest()

ts::DirectShowTest::DirectShowTest ( std::ostream & output,
Report & report )

Constructor.

Parameters
[in,out]outputWhere to display test results.
[in,out]reportWhere to report errors.

Member Function Documentation

◆ TestNames()

const Names & ts::DirectShowTest::TestNames ( )
static

An enumeration of TestType names, typically used for command line options.

Returns
A constant reference to the enumation data.

◆ runTest()

void ts::DirectShowTest::runTest ( TestType type)

Run one test.

Parameters
[in]typeThe test to run.

◆ listDevices()

void ts::DirectShowTest::listDevices ( const UString & margin = UString())

Brief list of DirectShow devices, same as runTest(LIST_DEVICES).

Parameters
[in]marginLeft margin to display.

◆ enumerateDevices()

void ts::DirectShowTest::enumerateDevices ( const UString & margin = UString())

Enumerate DirectShow devices, same as runTest(ENUMERATE_DEVICES).

Parameters
[in]marginLeft margin to display.

◆ testTuningSpaces()

void ts::DirectShowTest::testTuningSpaces ( const UString & margin = UString())

Test tuning spaces, same as runTest(TUNING_SPACES).

Parameters
[in]marginLeft margin to display.

◆ testBDATuners()

void ts::DirectShowTest::testBDATuners ( const UString & margin = UString())

Test BDA tuners, same as runTest(BDA_TUNERS).

Parameters
[in]marginLeft margin to display.

◆ displayDevicesByCategory()

bool ts::DirectShowTest::displayDevicesByCategory ( const ::GUID & category,
const UString & name,
bool details = true,
const UString & margin = UString() )

Display all devices of the specified category.

Parameters
[in]categoryCategory of the devices to display.
[in]nameName of the category to display.
[in]detailsWhen true, list all details.
[in]marginLeft margin to display.
Returns
True on success, false on error.

◆ displayTuningSpaces()

bool ts::DirectShowTest::displayTuningSpaces ( const UString & margin = UString())

Display all DirectShow tuning spaces.

Parameters
[in]marginLeft margin to display.
Returns
True on success, false on error.

◆ displayObject()

void ts::DirectShowTest::displayObject ( ::IUnknown * object,
const UString & margin = UString() )

Show selected properties of a COM object.

Parameters
[in]objectObject to query.
[in]marginLeft margin to display.

◆ displayInterfaces()

void ts::DirectShowTest::displayInterfaces ( ::IUnknown * object,
const UString & margin = UString() )

List some known interfaces that an object may expose. Warning, very slow, test interfaces one by one.

Parameters
[in]objectObject to query.
[in]marginLeft margin to display.

The documentation for this class was generated from the following file: