LibDMRConf  0.6.0
A library to program DMR radios.
Public Types | Public Member Functions | Public Attributes | List of all members
D878UVCodeplug::scanlist_t Struct Reference

Represents a scan list within the binary codeplug. More...

#include <d878uv_codeplug.hh>

Public Types

enum  PriChannel { PRIO_CHAN_OFF = 0, PRIO_CHAN_SEL1 = 1, PRIO_CHAN_SEL2 = 2, PRIO_CHAN_SEL12 = 3 }
 Defines all possible priority channel selections. More...
 
enum  RevertChannel {
  REVCH_SELECTED = 0, REVCH_SEL_TB = 1, REVCH_PRIO_CH1 = 2, REVCH_PRIO_CH2 = 3,
  REVCH_LAST_CALLED = 4, REVCH_LAST_USED = 5, REVCH_PRIO_CH1_TB = 6, REVCH_PRIO_CH2_TB = 7
}
 Defines all possible reply channel selections. More...
 

Public Member Functions

 scanlist_t ()
 Constructor.
 
void clear ()
 Clears the scan list.
 
QString getName () const
 Returns the name of the scan list.
 
void setName (const QString &name)
 Sets the name of the scan list.
 
ScanListtoScanListObj ()
 Constructs a ScanList object from this definition. More...
 
void linkScanListObj (ScanList *lst, CodeplugContext &ctx)
 Links all channels (members and primary channels) with the given scan-list object.
 
bool fromScanListObj (ScanList *lst, Config *config)
 Constructs the binary representation from the give config.
 

Public Attributes

uint8_t _unused0000
 Unused, set to 0.
 
uint8_t prio_ch_select
 Priority Channel Select, default = PRIO_CHAN_OFF.
 
uint16_t priority_ch1
 Priority Channel 1: 0=Current Channel, index+1, little endian, 0xffff=Off.
 
uint16_t priority_ch2
 Priority Channel 2: 0=Current Channel, index+1, little endian, 0xffff=Off.
 
uint16_t look_back_a
 Look Back Time A, sec*10, little endian, default 0x000f.
 
uint16_t look_back_b
 Look Back Time B, sec*10, little endian, default 0x0019.
 
uint16_t dropout_delay
 Dropout Delay Time, sec*10, little endian, default 0x001d.
 
uint16_t dwell
 Dwell Time, sec*10, little endian, default 0x001d.
 
uint8_t revert_channel
 Revert Channel, see RevertChannel, default REVCH_SELECTED.
 
uint8_t name [16]
 Scan List Name, ASCII, 0-terminated.
 
uint8_t _pad001e
 Pad byte, set to 0x00.
 
uint16_t member [50]
 Channels indices, 0-based, little endian, 0xffff=empty.
 
uint8_t _unused0084 [12]
 Unused, set to 0.
 

Detailed Description

Represents a scan list within the binary codeplug.

Memmory layout of encoded scanlist (144byte):

     0                               8                               16                              24
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
00 | Unused, set to 0x00           | Priority Channel Select       | Priority channel index 1, 16bit index, little endian          |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
04 | Priority channel index 2, 16bit index, little endian          | Look back time A                                              |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
08 | Look back time B                                              | Dropout delay                                                 |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0c | Dwell time                                                    | Revert channel type           | Name, 16 ASCII, 0-padded   ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
1c  ...                                                                                            | Unused, set to 0x00           |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
20 | 50 x 16bit channel indices, little endian, 0xffff=empty                                                                    ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
80  ...                                                                                                                            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
84 | 12 unused bytes , set to 0x00                                                                                              ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
8c  ...                                                                                                                            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Member Enumeration Documentation

◆ PriChannel

Defines all possible priority channel selections.

Enumerator
PRIO_CHAN_OFF 

Off.

PRIO_CHAN_SEL1 

Priority Channel Select 1.

PRIO_CHAN_SEL2 

Priority Channel Select 2.

PRIO_CHAN_SEL12 

Priority Channel Select 1 + Priority Channel Select 2.

◆ RevertChannel

Defines all possible reply channel selections.

Enumerator
REVCH_SELECTED 

Selected.

REVCH_SEL_TB 

Selected + TalkBack.

REVCH_PRIO_CH1 

Priority Channel Select 1.

REVCH_PRIO_CH2 

Priority Channel Select 2.

REVCH_LAST_CALLED 

Last Called.

REVCH_LAST_USED 

Last Used.

REVCH_PRIO_CH1_TB 

Priority Channel Select 1 + TalkBack.

REVCH_PRIO_CH2_TB 

Priority Channel Select 2 + TalkBack.

Member Function Documentation

◆ toScanListObj()

ScanList * D878UVCodeplug::scanlist_t::toScanListObj ( )

Constructs a ScanList object from this definition.

This only sets the properties of the scan list. To associate all members with the scan list object, call linkScanListObj.


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