vdr
2.2.0
|
#include <remote.h>
Public Member Functions | |
virtual | ~cRemote () |
virtual bool | Ready (void) |
virtual bool | Initialize (void) |
const char * | Name (void) |
![]() | |
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 |
Static Public Member Functions | |
static void | SetLearning (cRemote *Learning) |
static bool | IsLearning () |
static bool | Enabled (void) |
static void | SetEnabled (bool Enabled) |
static void | Clear (void) |
static bool | Put (eKeys Key, bool AtFront=false) |
static bool | PutMacro (eKeys Key) |
static bool | CallPlugin (const char *Plugin) |
static const char * | GetPlugin (void) |
static bool | HasKeys (void) |
static eKeys | Get (int WaitMs=1000, char **UnknownCode=NULL) |
static time_t | LastActivity (void) |
static void | TriggerLastActivity (void) |
Protected Member Functions | |
cRemote (const char *Name) | |
const char * | GetSetup (void) |
void | PutSetup (const char *Setup) |
bool | Put (uint64_t Code, bool Repeat=false, bool Release=false) |
bool | Put (const char *Code, bool Repeat=false, bool Release=false) |
Private Types | |
enum | { MaxKeys = 2 * MAXKEYSINMACRO } |
Private Attributes | |
char * | name |
Static Private Attributes | |
static eKeys | keys [MaxKeys] |
static int | in = 0 |
static int | out = 0 |
static cTimeMs | repeatTimeout |
static cRemote * | learning = NULL |
static char * | unknownCode = NULL |
static cMutex | mutex |
static cCondVar | keyPressed |
static time_t | lastActivity = 0 |
static const char * | keyMacroPlugin = NULL |
static const char * | callPlugin = NULL |
static bool | enabled = true |
|
protected |
Definition at line 39 of file remote.c.
References cListBase::Add(), name, and Remotes.
|
virtual |
Definition at line 45 of file remote.c.
References cListBase::Del(), name, and Remotes.
|
static |
Initiates calling the given plugin's main menu function.
The Plugin parameter is the name of the plugin, and must be a static string. Returns true if the plugin call was successfully initiated (the actual call to the plugin's main menu function will take place some time later, during the next execution of VDR's main loop). If there is already a plugin call pending false will be returned and the caller should try again later.
Definition at line 151 of file remote.c.
References callPlugin, k_Plugin, mutex, and Put().
Referenced by cSVDRP::CmdPLUG(), cPictureControl::ProcessKey(), and SetEnabled().
|
static |
Definition at line 72 of file remote.c.
References in, learning, mutex, out, and unknownCode.
Referenced by cInterface::LearnKeys(), Put(), cInterface::QueryKeys(), and SetEnabled().
|
inlinestatic |
Definition at line 49 of file remote.h.
References enabled.
Referenced by cSVDRP::CmdHITK(), cSVDRP::CmdREMO(), cShutdownHandler::ConfirmShutdown(), and SetEnabled().
|
static |
Definition at line 181 of file remote.c.
References enabled, in, k_Repeat, keyPressed, keys, kNone, learning, MaxKeys, mutex, out, REPEATTIMEOUT, repeatTimeout, cTimeMs::Set(), cTimeMs::TimedOut(), cCondVar::TimedWait(), TriggerLastActivity(), and unknownCode.
Referenced by cInterface::GetKey(), Initialize(), cInterface::QueryKeys(), and SetEnabled().
|
static |
Returns the name of the plugin that was set with a previous call to PutMacro() or CallPlugin().
The internally stored pointer to the plugin name will be reset to NULL by this call.
Definition at line 162 of file remote.c.
References callPlugin, keyMacroPlugin, and mutex.
Referenced by main(), and SetEnabled().
|
protected |
Definition at line 51 of file remote.c.
References cKeys::GetSetup(), Keys, and Name().
Referenced by cRcuRemote::cRcuRemote().
|
static |
Definition at line 175 of file remote.c.
References in, k_Repeat, keys, mutex, and out.
Referenced by cRemoveDeletedRecordingsThread::Action(), cInterface::GetKey(), SetEnabled(), and cTimers::SetEvents().
|
virtual |
Reimplemented in cRcuRemote.
Definition at line 61 of file remote.c.
References Get(), INITTIMEOUT, kNone, and Ready().
Referenced by cInterface::QueryKeys(), and Ready().
|
inlinestatic |
Definition at line 48 of file remote.h.
Referenced by cInterface::GetKey(), and cKbdRemote::PutKey().
|
inlinestatic |
Absolute time when last key was delivered by Get().
Definition at line 68 of file remote.h.
References lastActivity, and TriggerLastActivity().
Referenced by main().
|
inline |
Definition at line 46 of file remote.h.
References name.
Referenced by cRcuRemote::cRcuRemote(), GetSetup(), cRcuRemote::Initialize(), Put(), PutSetup(), and cInterface::QueryKeys().
|
protected |
Definition at line 124 of file remote.c.
Referenced by cLircRemote::Action(), cRcuRemote::Action(), CallPlugin(), cSVDRP::CmdHITK(), cMenuEditFolder::cMenuEditFolder(), cOsdMenu::HotKey(), main(), cMenuMain::ProcessKey(), cDisplayChannel::ProcessKey(), cDisplayVolume::ProcessKey(), cMenuRecording::ProcessKey(), cMenuSetupDVB::ProcessKey(), Put(), cKbdRemote::PutKey(), PutMacro(), SetEnabled(), and cInterface::Wait().
|
protected |
Definition at line 131 of file remote.c.
References cCondVar::Broadcast(), cKeys::Get(), k_Release, k_Repeat, keyPressed, Keys, kNone, learning, Name(), Put(), and unknownCode.
|
static |
|
static |
Definition at line 110 of file remote.c.
References cKeyMacros::Get(), keyMacroPlugin, KeyMacros, cKeyMacro::Macro(), mutex, cKeyMacro::NumKeys(), cKeyMacro::Plugin(), and Put().
Referenced by main(), and SetEnabled().
|
protected |
Definition at line 56 of file remote.c.
References Keys, Name(), and cKeys::PutSetup().
Referenced by cRcuRemote::Initialize().
|
inlinevirtual |
Reimplemented in cRcuRemote, and cLircRemote.
Definition at line 44 of file remote.h.
References Initialize().
Referenced by Initialize().
|
inlinestatic |
Definition at line 50 of file remote.h.
References CallPlugin(), Clear(), Enabled(), Get(), GetPlugin(), HasKeys(), Put(), and PutMacro().
Referenced by cSVDRP::CmdREMO().
|
inlinestatic |
Definition at line 47 of file remote.h.
Referenced by cInterface::LearnKeys().
|
static |
Simulates user activity, for instance to keep the current menu open even if no remote control key has been pressed.
Definition at line 204 of file remote.c.
References lastActivity.
Referenced by Get(), LastActivity(), and cMenuCam::Set().
|
staticprivate |
Definition at line 33 of file remote.h.
Referenced by CallPlugin(), and GetPlugin().
|
staticprivate |
|
staticprivate |
|
staticprivate |
Definition at line 32 of file remote.h.
Referenced by GetPlugin(), and PutMacro().
|
staticprivate |
|
staticprivate |
|
staticprivate |
Definition at line 31 of file remote.h.
Referenced by LastActivity(), and TriggerLastActivity().
|
staticprivate |
|
staticprivate |
Definition at line 29 of file remote.h.
Referenced by CallPlugin(), Clear(), Get(), GetPlugin(), HasKeys(), Put(), and PutMacro().
|
private |
Definition at line 35 of file remote.h.
Referenced by cRemote(), Name(), and ~cRemote().
|
staticprivate |
|
staticprivate |
|
staticprivate |