vdr  1.7.27
Public Types | Public Member Functions | Private Member Functions | Private Attributes
cDiseqc Class Reference

#include <diseqc.h>

List of all members.

Public Types

enum  eDiseqcActions {
  daNone, daToneOff, daToneOn, daVoltage13,
  daVoltage18, daMiniA, daMiniB, daScr,
  daCodes, daNone, daToneOff, daToneOn,
  daVoltage13, daVoltage18, daMiniA, daMiniB,
  daScr, daCodes
}
enum  { MaxDiseqcCodes = 6 }
enum  eDiseqcActions {
  daNone, daToneOff, daToneOn, daVoltage13,
  daVoltage18, daMiniA, daMiniB, daScr,
  daCodes, 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
 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

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
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

Detailed Description

Definition at line 43 of file diseqc.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
MaxDiseqcCodes 

Definition at line 56 of file diseqc.h.

anonymous enum
Enumerator:
MaxDiseqcCodes 

Definition at line 56 of file include/vdr/diseqc.h.

Enumerator:
daNone 
daToneOff 
daToneOn 
daVoltage13 
daVoltage18 
daMiniA 
daMiniB 
daScr 
daCodes 
daNone 
daToneOff 
daToneOn 
daVoltage13 
daVoltage18 
daMiniA 
daMiniB 
daScr 
daCodes 

Definition at line 45 of file include/vdr/diseqc.h.

Enumerator:
daNone 
daToneOff 
daToneOn 
daVoltage13 
daVoltage18 
daMiniA 
daMiniB 
daScr 
daCodes 
daNone 
daToneOff 
daToneOn 
daVoltage13 
daVoltage18 
daMiniA 
daMiniB 
daScr 
daCodes 

Definition at line 45 of file diseqc.h.


Constructor & Destructor Documentation

cDiseqc::cDiseqc ( void  )

Definition at line 92 of file diseqc.c.

References commands, devices, lof, parsing, polarization, scrBank, slof, and source.

Definition at line 104 of file diseqc.c.

References commands.

cDiseqc::cDiseqc ( void  )

Member Function Documentation

const char* cDiseqc::Commands ( void  ) const [inline]

Definition at line 97 of file diseqc.h.

References commands.

const char* cDiseqc::Commands ( void  ) const [inline]

Definition at line 97 of file include/vdr/diseqc.h.

References commands.

int cDiseqc::Devices ( void  ) const [inline]

Definition at line 91 of file include/vdr/diseqc.h.

References devices.

int cDiseqc::Devices ( void  ) const [inline]

Definition at line 91 of file diseqc.h.

References devices.

Referenced by cDiseqcs::Get().

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().

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).

const char* cDiseqc::GetCodes ( const char *  s,
uchar Codes = NULL,
uint8_t *  MaxCodes = NULL 
) const [private]
const char * cDiseqc::GetCodes ( const char *  s,
uchar Codes = NULL,
uint8_t *  MaxCodes = NULL 
) const [private]

Definition at line 199 of file diseqc.c.

References esyslog, MaxDiseqcCodes, and skipspace().

Referenced by Execute().

const char * cDiseqc::GetScrBank ( const char *  s) const [private]

Definition at line 181 of file diseqc.c.

References esyslog, parsing, and scrBank.

Referenced by Execute().

const char* cDiseqc::GetScrBank ( const char *  s) const [private]
bool cDiseqc::IsScr ( ) const [inline]

Definition at line 96 of file diseqc.h.

References scrBank.

Referenced by cDvbTuner::ExecuteDiseqc(), and cDvbTuner::SetFrontend().

bool cDiseqc::IsScr ( ) const [inline]

Definition at line 96 of file include/vdr/diseqc.h.

References scrBank.

int cDiseqc::Lof ( void  ) const [inline]

Definition at line 95 of file diseqc.h.

References lof.

int cDiseqc::Lof ( void  ) const [inline]

Definition at line 95 of file include/vdr/diseqc.h.

References lof.

bool cDiseqc::Parse ( const char *  s)
bool cDiseqc::Parse ( const char *  s)
char cDiseqc::Polarization ( void  ) const [inline]

Definition at line 94 of file diseqc.h.

References polarization.

char cDiseqc::Polarization ( void  ) const [inline]

Definition at line 94 of file include/vdr/diseqc.h.

References polarization.

uint cDiseqc::SetScrFrequency ( uint  SatFrequency,
const cScr Scr,
uint8_t *  Codes 
) const [private]

Definition at line 142 of file diseqc.c.

References cScr::Channel(), scrBank, and cScr::UserBand().

Referenced by Execute().

uint cDiseqc::SetScrFrequency ( uint  SatFrequency,
const cScr Scr,
uint8_t *  Codes 
) const [private]
int cDiseqc::SetScrPin ( const cScr Scr,
uint8_t *  Codes 
) const [private]
int cDiseqc::SetScrPin ( const cScr Scr,
uint8_t *  Codes 
) const [private]

Definition at line 154 of file diseqc.c.

References cScr::Pin().

Referenced by Execute().

int cDiseqc::Slof ( void  ) const [inline]

Definition at line 93 of file diseqc.h.

References slof.

int cDiseqc::Slof ( void  ) const [inline]

Definition at line 93 of file include/vdr/diseqc.h.

References slof.

int cDiseqc::Source ( void  ) const [inline]

Definition at line 92 of file include/vdr/diseqc.h.

References source.

int cDiseqc::Source ( void  ) const [inline]

Definition at line 92 of file diseqc.h.

References source.

const char * cDiseqc::Wait ( const char *  s) const [private]

Definition at line 167 of file diseqc.c.

References esyslog, parsing, and cCondWait::SleepMs().

Referenced by Execute().

const char* cDiseqc::Wait ( const char *  s) const [private]

Member Data Documentation

char * cDiseqc::commands [private]

Definition at line 64 of file diseqc.h.

Referenced by cDiseqc(), Commands(), Execute(), Parse(), and ~cDiseqc().

int cDiseqc::devices [private]

Definition at line 58 of file diseqc.h.

Referenced by cDiseqc(), Devices(), and Parse().

int cDiseqc::lof [private]

Definition at line 62 of file diseqc.h.

Referenced by cDiseqc(), Lof(), and Parse().

bool cDiseqc::parsing [private]

Definition at line 65 of file diseqc.h.

Referenced by cDiseqc(), GetScrBank(), Parse(), and Wait().

char cDiseqc::polarization [private]

Definition at line 61 of file diseqc.h.

Referenced by cDiseqc(), Parse(), and Polarization().

int cDiseqc::scrBank [mutable, private]

Definition at line 63 of file diseqc.h.

Referenced by cDiseqc(), GetScrBank(), IsScr(), and SetScrFrequency().

int cDiseqc::slof [private]

Definition at line 60 of file diseqc.h.

Referenced by cDiseqc(), Parse(), and Slof().

int cDiseqc::source [private]

Definition at line 59 of file diseqc.h.

Referenced by cDiseqc(), Parse(), and Source().


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