libdrmconf 0.12.1
A library to program DMR radios.
Loading...
Searching...
No Matches
OpenUV380 Class Reference

Implements an USB interface to Open UV380 VHF/UHF 5W DMR (Tier I&II) radios. More...

#include <openuv380.hh>

Inheritance diagram for OpenUV380:
Collaboration diagram for OpenUV380:

Public Member Functions

 OpenUV380 (OpenGD77Interface *device=nullptr, QObject *parent=nullptr)
 Do not construct this class directly, rather use Radio::detect.
 
const QString & name () const
 Returns the name of the radio (e.g., device identifier).
 
const Codeplugcodeplug () const
 Returns the codeplug instance.
 
Codeplugcodeplug ()
 Returns the codeplug instance.
 
const CallsignDBcallsignDB () const
 Returns the call-sign DB instance.
 
CallsignDBcallsignDB ()
 Returns the call-sign DB instance.
 
- Public Member Functions inherited from OpenGD77Base
 OpenGD77Base (OpenGD77Interface *device=nullptr, QObject *parent=nullptr)
 Do not construct this class directly, rather use Radio::detect.
 
const RadioLimitslimits () const
 Returns the limits for this radio.
 
- Public Member Functions inherited from Radio
 Radio (QObject *parent=nullptr)
 Default constructor.
 
Status status () const
 Returns the current status.
 
const ErrorStackerrorStack () const
 Returns the error stack, passed to startDownload, startUpload or startUploadCallsignDB.
 

Static Public Member Functions

static RadioInfo defaultRadioInfo ()
 Returns the default radio information.
 
- Static Public Member Functions inherited from OpenGD77Base
static RadioInfo defaultRadioInfo ()
 Returns the default radio information.
 
- Static Public Member Functions inherited from Radio
static Radiodetect (const USBDeviceDescriptor &descr, const RadioInfo &force=RadioInfo(), const ErrorStack &err=ErrorStack())
 Tries to detect the radio connected to the specified interface or constructs the specified radio using the RadioInfo passed by force.
 

Protected Attributes

QString _name
 The device identifier.
 
OpenUV380Codeplug _codeplug
 The actual binary codeplug representation.
 
OpenUV380CallsignDB _callsigns
 The actual binary callsign DB representation.
 
- Protected Attributes inherited from OpenGD77Base
OpenGD77Interface_dev
 The interface to the radio.
 
Config_config
 The generic configuration.
 
- Protected Attributes inherited from Radio
Status _task
 The current state/task.
 
ErrorStack _errorStack
 The error stack.
 

Additional Inherited Members

- Public Types inherited from Radio
enum  Status {
  StatusIdle , StatusDownload , StatusUpload , StatusUploadCallsigns ,
  StatusError
}
 Possible states of the radio object. More...
 
- Public Slots inherited from OpenGD77Base
bool startDownload (bool blocking=false, const ErrorStack &err=ErrorStack())
 Starts the download of the codeplug and derives the generic configuration from it.
 
bool startUpload (Config *config, bool blocking=false, const Codeplug::Flags &flags=Codeplug::Flags(), const ErrorStack &err=ErrorStack())
 Derives the device-specific codeplug from the generic configuration and uploads that codeplug to the radio.
 
bool startUploadCallsignDB (UserDatabase *db, bool blocking=false, const CallsignDB::Selection &selection=CallsignDB::Selection(), const ErrorStack &err=ErrorStack())
 Encodes the given user-database and uploades it to the device.
 
- Public Slots inherited from Radio
virtual bool startDownload (bool blocking=false, const ErrorStack &err=ErrorStack())=0
 Starts the download of the codeplug.
 
virtual bool startUpload (Config *config, bool blocking=false, const Codeplug::Flags &flags=Codeplug::Flags(), const ErrorStack &err=ErrorStack())=0
 Derives the device-specific codeplug from the generic configuration and uploads that codeplug to the radio.
 
virtual bool startUploadCallsignDB (UserDatabase *db, bool blocking=false, const CallsignDB::Selection &selection=CallsignDB::Selection(), const ErrorStack &err=ErrorStack())=0
 Assembles the callsign DB from the given one and uploads it to the device.
 
- Signals inherited from Radio
void downloadStarted ()
 Gets emitted once the codeplug download has been started.
 
void downloadProgress (int percent)
 Gets emitted on download progress (e.g., for progress bars).
 
void downloadFinished (Radio *radio, Codeplug *codeplug)
 Gets emitted once the codeplug download has been finished.
 
void downloadError (Radio *radio)
 Gets emitted if there was an error during the codeplug download.
 
void uploadStarted ()
 Gets emitted once the codeplug upload has been started.
 
void uploadProgress (int percent)
 Gets emitted on upload progress (e.g., for progress bars).
 
void uploadError (Radio *radio)
 Gets emitted if there was an error during the upload.
 
void uploadComplete (Radio *radio)
 Gets emitted once the codeplug upload has been completed successfully.
 
- Protected Member Functions inherited from OpenGD77Base
void run ()
 Thread main routine, performs all blocking IO operations for codeplug up- and download.
 
bool download ()
 Implements the actual download process.
 
bool upload ()
 Implements the actual codeplug upload process.
 
bool uploadCallsigns ()
 Implements the actual callsign DB upload process.
 

Detailed Description

Implements an USB interface to Open UV380 VHF/UHF 5W DMR (Tier I&II) radios.

Member Function Documentation

◆ callsignDB() [1/2]

CallsignDB * OpenUV380::callsignDB ( )
virtual

Returns the call-sign DB instance.

Reimplemented from Radio.

◆ callsignDB() [2/2]

const CallsignDB * OpenUV380::callsignDB ( ) const
virtual

Returns the call-sign DB instance.

Reimplemented from Radio.

◆ codeplug() [1/2]

Codeplug & OpenUV380::codeplug ( )
virtual

Returns the codeplug instance.

Implements Radio.

◆ codeplug() [2/2]

const Codeplug & OpenUV380::codeplug ( ) const
virtual

Returns the codeplug instance.

Implements Radio.

◆ defaultRadioInfo()

RadioInfo OpenUV380::defaultRadioInfo ( )
static

Returns the default radio information.

The actual instance may have different properties due to variants of the same radio.

◆ name()

const QString & OpenUV380::name ( ) const
virtual

Returns the name of the radio (e.g., device identifier).

Implements Radio.


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