vdr
2.0.6
|
#include <svdrp.h>
Public Member Functions | |
cSVDRP (int Port) | |
~cSVDRP () | |
bool | HasConnection (void) |
bool | Process (void) |
Static Public Member Functions | |
static void | SetGrabImageDir (const char *GrabImageDir) |
Private Member Functions | |
void | Close (bool SendReply=false, bool Timeout=false) |
bool | Send (const char *s, int length=-1) |
void | Reply (int Code, const char *fmt,...) __attribute__((format(printf |
void void | PrintHelpTopics (const char **hp) |
void | CmdCHAN (const char *Option) |
void | CmdCLRE (const char *Option) |
void | CmdDELC (const char *Option) |
void | CmdDELR (const char *Option) |
void | CmdDELT (const char *Option) |
void | CmdEDIT (const char *Option) |
void | CmdGRAB (const char *Option) |
void | CmdHELP (const char *Option) |
void | CmdHITK (const char *Option) |
void | CmdLSTC (const char *Option) |
void | CmdLSTE (const char *Option) |
void | CmdLSTR (const char *Option) |
void | CmdLSTT (const char *Option) |
void | CmdMESG (const char *Option) |
void | CmdMODC (const char *Option) |
void | CmdMODT (const char *Option) |
void | CmdMOVC (const char *Option) |
void | CmdNEWC (const char *Option) |
void | CmdNEWT (const char *Option) |
void | CmdNEXT (const char *Option) |
void | CmdPLAY (const char *Option) |
void | CmdPLUG (const char *Option) |
void | CmdPUTE (const char *Option) |
void | CmdREMO (const char *Option) |
void | CmdSCAN (const char *Option) |
void | CmdSTAT (const char *Option) |
void | CmdUPDT (const char *Option) |
void | CmdUPDR (const char *Option) |
void | CmdVOLU (const char *Option) |
void | Execute (char *Cmd) |
Private Attributes | |
cSocket | socket |
cFile | file |
cRecordings | recordings |
cPUTEhandler * | PUTEhandler |
int | numChars |
int | length |
char * | cmdLine |
time_t | lastActivity |
Static Private Attributes | |
static char * | grabImageDir = NULL |
cSVDRP::cSVDRP | ( | int | Port | ) |
Definition at line 386 of file svdrp.c.
References cmdLine, isyslog, lastActivity, length, MALLOC, numChars, and PUTEhandler.
|
private |
Definition at line 403 of file svdrp.c.
References cFile::Close(), DELETENULL(), file, cFile::IsOpen(), isyslog, PUTEhandler, and Reply().
|
private |
Definition at line 484 of file svdrp.c.
References Channels, cDevice::CurrentChannel(), cList< T >::First(), tChannelID::FromString(), cChannels::GetByChannelID(), cChannels::GetByNumber(), cChannel::GroupSep(), isnumber(), cChannels::MaxNumber(), cChannel::Name(), cList< T >::Next(), cChannel::Number(), cDevice::PrimaryDevice(), Reply(), and cDevice::SwitchChannel().
Referenced by Execute().
|
private |
Definition at line 550 of file svdrp.c.
References Channels, cSchedule::Cleanup(), cSchedules::ClearAll(), tChannelID::ClrRid(), EITDISABLETIME, cList< T >::First(), tChannelID::FromString(), cChannels::GetByNumber(), cChannel::GetChannelID(), tChannelID::InvalidID, isnumber(), cChannels::MaxNumber(), cList< T >::Next(), Reply(), cSchedules::Schedules(), cEitFilter::SetDisableUntil(), and Timers.
Referenced by Execute().
|
private |
Definition at line 615 of file svdrp.c.
References cChannels::BeingEdited(), Channels, cDevice::CurrentChannel(), cListBase::Del(), cList< T >::First(), cList< T >::Get(), cChannels::GetByNumber(), cChannels::GetNextNormal(), cChannels::GetPrevNormal(), cListObject::Index(), isnumber(), isyslog, cList< T >::Next(), cChannel::Number(), cDevice::PrimaryDevice(), cChannels::ReNumber(), cDevice::Replaying(), Reply(), cDevice::SetCurrentChannel(), cChannels::SetModified(), cChannels::SwitchTo(), Timers, and cDevice::Transferring().
Referenced by Execute().
|
private |
Definition at line 662 of file svdrp.c.
References cCutter::Active(), cListBase::Count(), cRecordings::DelByName(), cRecording::Delete(), cRecording::FileName(), cList< T >::Get(), cRecordControls::GetRecordControl(), cListObject::Index(), isnumber(), recordings, Recordings, Reply(), and cRecordControl::Timer().
Referenced by Execute().
|
private |
Definition at line 694 of file svdrp.c.
References cTimers::BeingEdited(), cTimers::Del(), cList< T >::Get(), isnumber(), isyslog, cTimer::Recording(), Reply(), cTimers::SetModified(), Timers, and cTimer::ToDescr().
Referenced by Execute().
|
private |
Definition at line 723 of file svdrp.c.
References cCutter::Active(), cListBase::Count(), cRecording::FileName(), cRecording::FramesPerSecond(), cList< T >::Get(), isnumber(), cRecording::IsPesRecording(), cMarks::Load(), recordings, Reply(), cCutter::Start(), and cRecording::Title().
Referenced by Execute().
|
private |
Definition at line 753 of file svdrp.c.
References AddDirectory(), buf(), dsyslog, cDevice::GrabImage(), grabImageDir, isnumber(), LOG_ERROR_STR, cBase64Encoder::NextLine(), cDevice::PrimaryDevice(), Reply(), safe_write(), and cString::Truncate().
Referenced by Execute().
|
private |
Definition at line 890 of file svdrp.c.
References cPlugin::Description(), GetHelpPage(), cPluginManager::GetPlugin(), HelpPages, cPlugin::Name(), PrintHelpTopics(), Reply(), cPlugin::SVDRPHelpPages(), VDRVERSION, and cPlugin::Version().
Referenced by Execute().
|
private |
Definition at line 918 of file svdrp.c.
References buf(), cRemote::Enabled(), cKey::FromString(), kNone, cRemote::Put(), Reply(), and cKey::ToString().
Referenced by Execute().
|
private |
Definition at line 957 of file svdrp.c.
References Channels, cList< T >::First(), tChannelID::FromString(), cChannels::GetByChannelID(), cChannels::GetByNumber(), isnumber(), cChannels::MaxNumber(), cList< T >::Next(), cChannel::Number(), Reply(), and cChannel::ToText().
Referenced by Execute().
|
private |
Definition at line 999 of file svdrp.c.
References buf(), Channels, dmAll, dmAtTime, dmFollowing, dmPresent, cSchedule::Dump(), cSchedules::Dump(), file, tChannelID::FromString(), cChannels::GetByChannelID(), cChannels::GetByNumber(), cSchedules::GetSchedule(), isnumber(), Reply(), and cSchedules::Schedules().
Referenced by Execute().
|
private |
Definition at line 1082 of file svdrp.c.
References buf(), cListBase::Count(), file, cRecording::FileName(), cList< T >::First(), cList< T >::Get(), cListObject::Index(), cRecording::Info(), isnumber(), cList< T >::Last(), cList< T >::Next(), recordings, Reply(), cRecording::Title(), cRecordings::Update(), and cRecordingInfo::Write().
Referenced by Execute().
|
private |
Definition at line 1142 of file svdrp.c.
References buf(), cListBase::Count(), cList< T >::Get(), cListObject::Index(), isnumber(), Reply(), Timers, and cTimer::ToText().
Referenced by Execute().
|
private |
|
private |
Definition at line 1195 of file svdrp.c.
References cChannels::BeingEdited(), Channels, cChannels::GetByNumber(), cChannels::HasUniqueChannelID(), isyslog, cChannel::Number(), cChannel::Parse(), cChannels::ReNumber(), Reply(), cChannels::SetModified(), skipspace(), and cChannel::ToText().
Referenced by Execute().
|
private |
Definition at line 1233 of file svdrp.c.
References cTimers::BeingEdited(), cTimer::ClrFlags(), cList< T >::Get(), cTimer::HasFlags(), cListObject::Index(), isyslog, cTimer::Parse(), Reply(), cTimer::SetFlags(), cTimers::SetModified(), skipspace(), tfActive, Timers, cTimer::ToDescr(), and cTimer::ToText().
Referenced by Execute().
|
private |
Definition at line 1270 of file svdrp.c.
References cTimers::BeingEdited(), cChannels::BeingEdited(), Channels, cDevice::CurrentChannel(), cChannels::GetByNumber(), isyslog, cListBase::Move(), cChannel::Number(), cDevice::PrimaryDevice(), cChannels::ReNumber(), cDevice::Replaying(), Reply(), cDevice::SetCurrentChannel(), cChannels::SetModified(), skipspace(), cChannels::SwitchTo(), Timers, and cDevice::Transferring().
Referenced by Execute().
|
private |
Definition at line 1323 of file svdrp.c.
References cListBase::Add(), Channels, cChannels::HasUniqueChannelID(), isyslog, cChannel::Number(), cChannel::Parse(), cChannels::ReNumber(), Reply(), cChannels::SetModified(), and cChannel::ToText().
Referenced by Execute().
|
private |
Definition at line 1347 of file svdrp.c.
References cTimers::Add(), cListObject::Index(), isyslog, cTimer::Parse(), Reply(), cTimers::SetModified(), Timers, cTimer::ToDescr(), and cTimer::ToText().
Referenced by Execute().
|
private |
Definition at line 1366 of file svdrp.c.
References cTimers::GetNextActiveTimer(), cListObject::Index(), Reply(), cTimer::StartTime(), Timers, and TimeToString().
Referenced by Execute().
|
private |
Definition at line 1385 of file svdrp.c.
References cControl::Attach(), cListBase::Count(), cResumeFile::Delete(), cRecording::FileName(), cRecording::FramesPerSecond(), cList< T >::Get(), HMSFToIndex(), isnumber(), cRecording::IsPesRecording(), cControl::Launch(), recordings, Reply(), cReplayControl::SetRecording(), cControl::Shutdown(), skipspace(), and cRecording::Title().
Referenced by Execute().
|
private |
Definition at line 1428 of file svdrp.c.
References cRemote::CallPlugin(), cPlugin::Description(), GetHelpPage(), cPluginManager::GetPlugin(), cPlugin::Name(), PrintHelpTopics(), Reply(), skipspace(), cPlugin::SVDRPCommand(), cPlugin::SVDRPHelpPages(), and cPlugin::Version().
Referenced by Execute().
|
private |
Definition at line 1499 of file svdrp.c.
References cSchedules::Cleanup(), DELETENULL(), cPUTEhandler::Message(), PUTEhandler, cSchedules::Read(), Reply(), and cPUTEhandler::Status().
Referenced by Execute().
|
private |
Definition at line 1524 of file svdrp.c.
References cRemote::Enabled(), Reply(), and cRemote::SetEnabled().
Referenced by Execute().
|
private |
Definition at line 1542 of file svdrp.c.
References EITScanner, cEITScanner::ForceScan(), and Reply().
Referenced by Execute().
|
private |
Definition at line 1548 of file svdrp.c.
References Reply(), and VideoDiskSpace().
Referenced by Execute().
|
private |
Definition at line 1595 of file svdrp.c.
References Recordings, Reply(), and cRecordings::Update().
Referenced by Execute().
|
private |
Definition at line 1563 of file svdrp.c.
References cTimers::Add(), cTimers::BeingEdited(), cTimers::GetTimer(), cListObject::Index(), isyslog, cTimer::Parse(), Reply(), cTimers::SetModified(), Timers, cTimer::ToDescr(), and cTimer::ToText().
Referenced by Execute().
|
private |
Definition at line 1601 of file svdrp.c.
References cDevice::CurrentVolume(), isnumber(), cDevice::PrimaryDevice(), Reply(), cDevice::SetVolume(), cDevice::ToggleMute(), and VOLUMEDELTA.
Referenced by Execute().
|
private |
Definition at line 1625 of file svdrp.c.
References Close(), CMD, CmdCHAN(), CmdCLRE(), CmdDELC(), CmdDELR(), CmdDELT(), CmdEDIT(), CmdGRAB(), CmdHELP(), CmdHITK(), CmdLSTC(), CmdLSTE(), CmdLSTR(), CmdLSTT(), CmdMESG(), CmdMODC(), CmdMODT(), CmdMOVC(), CmdNEWC(), CmdNEWT(), CmdNEXT(), CmdPLAY(), CmdPLUG(), CmdPUTE(), CmdREMO(), CmdSCAN(), CmdSTAT(), CmdUPDR(), CmdUPDT(), CmdVOLU(), DELETENULL(), EITDISABLETIME, cPUTEhandler::Message(), cPUTEhandler::Process(), PUTEhandler, Reply(), cEitFilter::SetDisableUntil(), skipspace(), and cPUTEhandler::Status().
Referenced by Process().
|
inline |
Definition at line 90 of file svdrp.h.
References cFile::IsOpen().
Referenced by cInterface::HasSVDRPConnection().
|
private |
Definition at line 458 of file svdrp.c.
References GetHelpTopic(), MAXHELPTOPIC, and Reply().
bool cSVDRP::Process | ( | void | ) |
Definition at line 1678 of file svdrp.c.
References cSocket::Accept(), Close(), cmdLine, esyslog, Execute(), file, cFile::IsOpen(), isyslog, lastActivity, length, MALLOC, numChars, cFile::Open(), cFile::Ready(), Reply(), safe_read(), Setup, socket, cSetup::SVDRPTimeout, cCharSetConv::SystemCharacterTable(), TimeToString(), and VDRVERSION.
Referenced by cInterface::GetKey().
|
private |
Definition at line 430 of file svdrp.c.
References esyslog, file, cFile::IsOpen(), Send(), and cString::vsprintf().
Referenced by Close(), CmdCHAN(), CmdCLRE(), CmdDELC(), CmdDELR(), CmdDELT(), CmdEDIT(), CmdGRAB(), CmdHELP(), CmdHITK(), CmdLSTC(), CmdLSTE(), CmdLSTR(), CmdLSTT(), CmdMESG(), CmdMODC(), CmdMODT(), CmdMOVC(), CmdNEWC(), CmdNEWT(), CmdNEXT(), CmdPLAY(), CmdPLUG(), CmdPUTE(), CmdREMO(), CmdSCAN(), CmdSTAT(), CmdUPDR(), CmdUPDT(), CmdVOLU(), Execute(), PrintHelpTopics(), and Process().
|
private |
|
static |
|
private |
|
private |
|
staticprivate |
Definition at line 52 of file svdrp.h.
Referenced by CmdGRAB(), and SetGrabImageDir().
|
private |
|
private |
|
private |
|
private |
|
private |