vdr
2.0.6
|
#include <diseqc.h>
Public Types | |
enum | eDiseqcActions { daNone, daToneOff, daToneOn, daVoltage13, daVoltage18, daMiniA, daMiniB, daScr, daCodes } |
enum | { MaxDiseqcCodes = 6 } |
Public Member Functions | |
cDiseqc (void) | |
~cDiseqc () | |
bool | Parse (const char *s) |
eDiseqcActions | Execute (const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, uint *Frequency) const |
int | Devices (void) const |
int | Source (void) const |
int | Slof (void) const |
char | Polarization (void) const |
int | Lof (void) const |
bool | IsScr () const |
const char * | Commands (void) const |
![]() | |
cListObject (void) | |
virtual | ~cListObject () |
virtual int | Compare (const cListObject &ListObject) const |
void | Append (cListObject *Object) |
void | Insert (cListObject *Object) |
void | Unlink (void) |
int | Index (void) const |
cListObject * | Prev (void) const |
cListObject * | Next (void) const |
Private Member Functions | |
uint | SetScrFrequency (uint SatFrequency, const cScr *Scr, uint8_t *Codes) const |
int | SetScrPin (const cScr *Scr, uint8_t *Codes) const |
const char * | Wait (const char *s) const |
const char * | GetScrBank (const char *s) const |
const char * | GetCodes (const char *s, uchar *Codes=NULL, uint8_t *MaxCodes=NULL) const |
Private Attributes | |
int | devices |
int | source |
int | slof |
char | polarization |
int | lof |
int | scrBank |
char * | commands |
bool | parsing |
cDiseqc::cDiseqc | ( | void | ) |
|
inline |
|
inline |
cDiseqc::eDiseqcActions cDiseqc::Execute | ( | const char ** | CurrentAction, |
uchar * | Codes, | ||
uint8_t * | MaxCodes, | ||
const cScr * | Scr, | ||
uint * | Frequency | ||
) | const |
Parses the DiSEqC commands and returns the appropriate action code with every call.
CurrentAction must be the address of a character pointer, which is initialized to NULL. This pointer is used internally while parsing the commands and shall not be modified once Execute() has been called with it. Call Execute() repeatedly (always providing the same CurrentAction pointer) until it returns daNone. After a successful execution of all commands *CurrentAction points to the value 0x00. If the current action consists of sending code bytes to the device, those bytes will be copied into Codes. MaxCodes must be initialized to the maximum number of bytes Codes can handle, and will be set to the actual number of bytes copied to Codes upon return. If this DiSEqC entry requires SCR, the given Scr will be used. This must be a pointer returned from a previous call to cDiseqcs::Get(). Frequency must be the frequency the tuner will be tuned to, and will be set to the proper SCR frequency upon return (if SCR is used).
Definition at line 240 of file diseqc.c.
References commands, daCodes, daMiniA, daMiniB, daNone, daToneOff, daToneOn, daVoltage13, daVoltage18, GetCodes(), GetScrBank(), SetScrFrequency(), SetScrPin(), and Wait().
Referenced by cDvbTuner::ExecuteDiseqc(), and Parse().
|
private |
Definition at line 199 of file diseqc.c.
References esyslog, MaxDiseqcCodes, and skipspace().
Referenced by Execute().
|
private |
|
inline |
Definition at line 96 of file diseqc.h.
Referenced by cDvbTuner::ExecuteDiseqc(), and cDvbTuner::SetFrontend().
bool cDiseqc::Parse | ( | const char * | s | ) |
Definition at line 109 of file diseqc.c.
References commands, daNone, devices, esyslog, Execute(), cSource::FromString(), cSources::Get(), lof, ParseDeviceNumbers(), parsing, polarization, slof, source, and Sources.
|
inline |
Definition at line 94 of file diseqc.h.
References polarization.
|
private |
Definition at line 142 of file diseqc.c.
References cScr::Channel(), scrBank, and cScr::UserBand().
Referenced by Execute().
|
private |
|
inline |
|
private |
|
private |
Definition at line 64 of file diseqc.h.
Referenced by cDiseqc(), Commands(), Execute(), Parse(), and ~cDiseqc().
|
private |
|
private |
|
private |
|
private |
Definition at line 61 of file diseqc.h.
Referenced by cDiseqc(), Parse(), and Polarization().
|
mutableprivate |
Definition at line 63 of file diseqc.h.
Referenced by cDiseqc(), GetScrBank(), and SetScrFrequency().
|
private |
|
private |