24 virtual void Halt(
void);
43 bool Parse(
const char *s);
56 bool Load(
const char *
FileName,
bool AllowComments =
false,
bool MustExist =
false);
91 const char *
Wait(
const char *s)
const;
94 const char *
GetCodes(
const char *s,
uchar *Codes = NULL, uint8_t *MaxCodes = NULL)
const;
98 bool Parse(
const char *s);
132 bool IsScr(
void)
const {
return scrBank >= 0; }
140 bool Load(
const char *
FileName,
bool AllowComments =
false,
bool MustExist =
false);
141 const cDiseqc *
Get(
int Device,
int Source,
int Frequency,
char Polarization,
const cScr **Scr)
const;
virtual void DisableLimits(void)
Disables the soft limits for the dish movement.
const char * Wait(const char *s) const
bool IsScr(void) const
Returns true if this DiSEqC sequence uses Satellite Channel Routing.
uint UserBand(void) const
bool Parse(const char *s)
int Position(void) const
Indicates which positioning mode to use in order to move the dish to a given satellite position...
char Polarization(void) const
Returns the signal polarization this DiSEqC sequence applies to.
virtual void EnableLimits(void)
Enables the soft limits for the dish movement.
eDiseqcActions 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.
virtual void StorePosition(uint Number)
Store the current position as a satellite position with the given Number.
virtual void Drive(ePositionerDirection Direction)
Continuously move the dish to the given Direction until Halt() is called or it hits the soft or hard ...
const char * FileName(void)
A steerable satellite dish generally points to the south on the northern hemisphere, and to the north on the southern hemisphere (unless you're located directly on the equator, in which case the general direction is "up").
virtual void Halt(void)
Stop any ongoing motion of the dish.
int Slof(void) const
Returns the switch frequency of the LNB this DiSEqC sequence applies to.
virtual void SetLimit(ePositionerDirection Direction)
Set the soft limit of the dish movement in the given Direction to the current position.
virtual void GotoPosition(uint Number, int Longitude)
Move the dish to the satellite position stored under the given Number.
uint SetScrFrequency(uint SatFrequency, const cScr *Scr, uint8_t *Codes) const
virtual void GotoAngle(int Longitude)
Move the dish to the given angular position.
int Devices(void) const
Returns an integer where each bit represents one of the system's devices.
const char * GetScrBank(const char *s) const
bool Load(const char *FileName, bool AllowComments=false, bool MustExist=false)
virtual void Step(ePositionerDirection Direction, uint Steps=1)
Move the dish the given number of Steps in the given Direction.
const char * GetCodes(const char *s, uchar *Codes=NULL, uint8_t *MaxCodes=NULL) const
cScr * GetUnused(int Device)
const char * Commands(void) const
Returns a pointer to the actual commands of this DiSEqC sequence.
const cDiseqc * Get(int Device, int Source, int Frequency, char Polarization, const cScr **Scr) const
Selects a DiSEqC entry suitable for the given Device and tuning parameters.
int SetScrPin(const cScr *Scr, uint8_t *Codes) const
const char * GetPosition(const char *s) const
bool Load(const char *FileName, bool AllowComments=false, bool MustExist=false)
void SendDiseqc(uint8_t *Codes, int NumCodes)
int Lof(void) const
Returns the local oscillator frequency of the LNB this DiSEqC sequence applies to.
bool Parse(const char *s)
int Source(void) const
Returns the satellite source this DiSEqC sequence applies to.
virtual void RecalcPositions(uint Number)
Take the difference between the current actual position of the dish and the position stored with the ...