Qt 5.11 | Qt Multimedia | C++ Classes | QRadioData

Qt 5.11.3 Reference Documentation

# QRadioData Class

The QRadioData class provides interfaces to the RDS functionality of the system radio. More...

Header: | #include <QRadioData>
qmake: | QT += multimedia
Inherits: | QMediaBindableInterface and

- List of all members, including inherited members

## Public Types

enum | Error { NoError, ResourceError, OpenError, OutOfRangeError }
enum | ProgramType { Undefined, News, CurrentAffairs, Information, ..., College }

## Properties

alternativeFrequenciesEnabled : bool programType : const ProgramType programTypeName : const QString | radioText : const QString stationId : const QString stationName : const QString

## Public Functions

| QRadioData(QMediaObject *mediaObject, QObject *parent = nullptr)
virtual | ~QRadioData()
QMultimedia::AvailabilityStatus | availability() const
QRadioData::Error | error() const
QString | errorString() const
bool | isAlternativeFrequenciesEnabled() const
QRadioData::ProgramType | programType() const
QString | programTypeName() const
QString | radioText() const
QString | stationId() const
QString | stationName() const

## Reimplemented Public Functions

virtual QMediaObject * | mediaObject() const override

- 1 public function inherited from QMediaBindableInterface

## Public Slots

void | setAlternativeFrequenciesEnabled(bool enabled)

## Signals

void | alternativeFrequenciesEnabledChanged(bool enabled)
void | error(QRadioData::Error error)
void | programTypeChanged(QRadioData::ProgramType programType)
void | programTypeNameChanged(QString programTypeName)
void | radioTextChanged(QString radioText)
void | stationIdChanged(QString stationId)
void | stationNameChanged(QString stationName)

## Reimplemented Protected Functions

virtual bool | setMediaObject(QMediaObject *mediaObject) override

- 1 protected function inherited from QMediaBindableInterface

## Detailed Description

The QRadioData class provides interfaces to the RDS functionality of the system radio.

The radio data object will emit signals for any changes in radio data. You can enable or disable alternative frequency with setAlternativeFrequenciesEnabled().

You can get a QRadioData instance fromt the radioData property from a QRadioTuner instance.

      radio = new QRadioTuner;
      radioData = radio->radioData();

Alternatively, you can pass an instance of QRadioTuner to the constructor to QRadioData.

See also Radio Overview.

## Member Type Documentation

### enum QRadioData::Error

Enumerates radio data error conditions.

Constant | Value | Description
--- | --- | ---
`QRadioData::NoError` | `0` | No errors have occurred.
`QRadioData::ResourceError` | `1` | There is no radio service available.
`QRadioData::OpenError` | `2` | Unable to open radio device.
`QRadioData::OutOfRangeError` | `3` | An attempt to set a frequency or band that is not supported by radio device.

### enum QRadioData::ProgramType

This property holds the type of the currently playing program as transmitted by the radio station. The value can be any one of the values defined in the table below.

Constant | Value
--- | ---
`QRadioData::Undefined` | `0`
`QRadioData::News` | `1`
`QRadioData::CurrentAffairs` | `2`
`QRadioData::Information` | `3`
`QRadioData::Sport` | `4`
`QRadioData::Education` | `5`
`QRadioData::Drama` | `6`
`QRadioData::Culture` | `7`
`QRadioData::Science` | `8`
`QRadioData::Varied` | `9`
`QRadioData::PopMusic` | `10`
`QRadioData::RockMusic` | `11`
`QRadioData::EasyListening` | `12`
`QRadioData::LightClassical` | `13`
`QRadioData::SeriousClassical` | `14`
`QRadioData::OtherMusic` | `15`
`QRadioData::Weather` | `16`
`QRadioData::Finance` | `17`
`QRadioData::ChildrensProgrammes` | `18`
`QRadioData::SocialAffairs` | `19`
`QRadioData::Religion` | `20`
`QRadioData::PhoneIn` | `21`
`QRadioData::Travel` | `22`
`QRadioData::Leisure` | `23`
`QRadioData::JazzMusic` | `24`
`QRadioData::CountryMusic` | `25`
`QRadioData::NationalMusic` | `26`
`QRadioData::OldiesMusic` | `27`
`QRadioData::FolkMusic` | `28`
`QRadioData::Documentary` | `29`
`QRadioData::AlarmTest` | `30`
`QRadioData::Alarm` | `31`
`QRadioData::Talk` | `32`
`QRadioData::ClassicRock` | `33`
`QRadioData::AdultHits` | `34`
`QRadioData::SoftRock` | `35`
`QRadioData::Top40` | `36`
`QRadioData::Soft` | `37`
`QRadioData::Nostalgia` | `38`
`QRadioData::Classical` | `39`
`QRadioData::RhythmAndBlues` | `40`
`QRadioData::SoftRhythmAndBlues` | `41`
`QRadioData::Language` | `42`
`QRadioData::ReligiousMusic` | `43`
`QRadioData::ReligiousTalk` | `44`
`QRadioData::Personality` | `45`
`QRadioData::Public` | `46`
`QRadioData::College` | `47`

## Property Documentation

### alternativeFrequenciesEnabled : bool

Is Alternative Frequency currently enabled

Access functions:

bool | isAlternativeFrequenciesEnabled() const
void | setAlternativeFrequenciesEnabled(bool enabled)

Notifier signal:

void | alternativeFrequenciesEnabledChanged(bool enabled)

### programType : const ProgramType

Current Program Type

Access functions:

QRadioData::ProgramType | programType() const

Notifier signal:

void | programTypeChanged(QRadioData::ProgramType programType)

### programTypeName : const QString

Current Program Type Name

Access functions:

QString | programTypeName() const

Notifier signal:

void | programTypeNameChanged(QString programTypeName)

### radioText : const QString

Current Radio Text

Access functions:

QString | radioText() const

Notifier signal:

void | radioTextChanged(QString radioText)

### stationId : const QString

Current Program Identification

Access functions:

QString | stationId() const

Notifier signal:

void | stationIdChanged(QString stationId)

### stationName : const QString

Current Program Service

Access functions:

QString | stationName() const

Notifier signal:

void | stationNameChanged(QString stationName)

## Member Function Documentation

### QRadioData::QRadioData(QMediaObject *mediaObject, QObject *parent = nullptr)

Constructs a radio data based on a mediaObject and parent.

The mediaObject should be an instance of QRadioTuner. It is preferable to use the radioData property on a QRadioTuner instance to get an instance of QRadioData.

During construction, this class is bound to the mediaObject using the bind() method.

### `[virtual]` QRadioData::~QRadioData()

Destroys a radio data.

### `[signal]` void QRadioData::alternativeFrequenciesEnabledChanged(bool enabled)

Signals that automatically tuning to alternative frequencies has been enabled or disabled according to enabled.

Note: Notifier signal for property alternativeFrequenciesEnabled.

### QMultimedia::AvailabilityStatus QRadioData::availability() const

Returns the availability of the radio data service.

A long as there is a media service which provides radio functionality, then the availability will be that of the radio tuner.

### QRadioData::Error QRadioData::error() const

Returns the error state of a radio data.

See also errorString().

### `[signal]` void QRadioData::error(QRadioData::Error error)

Signals that an error occurred.

Note: Signal error is overloaded in this class. To connect to this signal by using the function pointer syntax, Qt provides a convenient helper for obtaining the function pointer as shown in this example:

      connect(radioData, QOverload<QRadioData::Error>::of(&QRadioData::error),
          [=](QRadioData::Error error){ /* ... */ });

### QString QRadioData::errorString() const

Returns a description of a radio data's error state.

See also error().

### `[override virtual]` QMediaObject *QRadioData::mediaObject() const

Reimplemented from QMediaBindableInterface::mediaObject().

See also setMediaObject().

### `[signal]` void QRadioData::programTypeChanged(QRadioData::ProgramType programType)

Signals that the Program Type code has changed to programType

Note: Notifier signal for property programType.

### `[signal]` void QRadioData::programTypeNameChanged(QString programTypeName)

Signals that the Program Type Name has changed to programTypeName

Note: Notifier signal for property programTypeName.

### `[signal]` void QRadioData::radioTextChanged(QString radioText)

Signals that the Radio Text property has changed to radioText

Note: Notifier signal for property radioText.

### `[override virtual protected]` bool QRadioData::setMediaObject(QMediaObject *mediaObject)

Reimplemented from QMediaBindableInterface::setMediaObject().

See also mediaObject().

### `[signal]` void QRadioData::stationIdChanged(QString stationId)

Signals that the Program Identification code has changed to stationId

Note: Notifier signal for property stationId.

### `[signal]` void QRadioData::stationNameChanged(QString stationName)

Signals that the Program Service has changed to stationName

Note: Notifier signal for property stationName.