vdr
2.2.0
|
#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 | CmdCPYR (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 | CmdMOVR (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 394 of file svdrp.c.
References cmdLine, isyslog, lastActivity, length, MALLOC, numChars, and PUTEhandler.
|
private |
Definition at line 411 of file svdrp.c.
References cFile::Close(), DELETENULL(), file, cFile::IsOpen(), isyslog, PUTEhandler, and Reply().
|
private |
Definition at line 492 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 558 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 686 of file svdrp.c.
References cRecordingsHandler::Add(), cRecordings::AddByName(), cString::CompactChars(), cListBase::Count(), ExchangeChars(), cRecording::FileName(), FOLDERDELIMCHAR, cList< T >::Get(), cRecording::IsInUse(), isnumber(), MakeDirs(), cRecording::Name(), RecordingInUseMessage(), recordings, Recordings, RecordingsHandler, Reply(), ruCopy, skipspace(), and strreplace().
|
private |
Definition at line 623 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 736 of file svdrp.c.
References cListBase::Count(), cRecordings::DelByName(), cRecording::Delete(), cRecording::FileName(), cList< T >::Get(), cRecording::IsInUse(), isnumber(), RecordingInUseMessage(), recordings, Recordings, and Reply().
Referenced by Execute().
|
private |
Definition at line 763 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 792 of file svdrp.c.
References cRecordingsHandler::Add(), cListBase::Count(), cRecording::FileName(), cRecording::FramesPerSecond(), cList< T >::Get(), isnumber(), cRecording::IsPesRecording(), cMarks::Load(), recordings, RecordingsHandler, Reply(), ruCut, and cRecording::Title().
Referenced by Execute().
|
private |
Definition at line 818 of file svdrp.c.
References AddDirectory(), 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 955 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 983 of file svdrp.c.
References cRemote::Enabled(), cKey::FromString(), kNone, cRemote::Put(), Reply(), and cKey::ToString().
Referenced by Execute().
|
private |
Definition at line 1022 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 1064 of file svdrp.c.
References 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 1147 of file svdrp.c.
References 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 1207 of file svdrp.c.
References cListBase::Count(), cList< T >::Get(), cListObject::Index(), isnumber(), Reply(), Timers, and cTimer::ToText().
Referenced by Execute().
|
private |
|
private |
Definition at line 1260 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 1298 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 1335 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 1388 of file svdrp.c.
References cRecording::ChangeName(), cListBase::Count(), cRecording::FileName(), cList< T >::Get(), cRecordings::GetByName(), cRecording::IsInUse(), isnumber(), cRecording::Name(), RecordingInUseMessage(), recordings, Recordings, Reply(), and skipspace().
Referenced by Execute().
|
private |
Definition at line 1428 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 1452 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 1471 of file svdrp.c.
References cTimers::GetNextActiveTimer(), cListObject::Index(), Reply(), cTimer::StartTime(), Timers, and TimeToString().
Referenced by Execute().
|
private |
Definition at line 1490 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 1533 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 1604 of file svdrp.c.
References cSchedules::Cleanup(), DELETENULL(), cPUTEhandler::Message(), PUTEhandler, cSchedules::Read(), Reply(), and cPUTEhandler::Status().
Referenced by Execute().
|
private |
Definition at line 1629 of file svdrp.c.
References cRemote::Enabled(), Reply(), and cRemote::SetEnabled().
Referenced by Execute().
|
private |
Definition at line 1647 of file svdrp.c.
References EITScanner, cEITScanner::ForceScan(), and Reply().
Referenced by Execute().
|
private |
Definition at line 1653 of file svdrp.c.
References Reply(), and cVideoDirectory::VideoDiskSpace().
Referenced by Execute().
|
private |
Definition at line 1700 of file svdrp.c.
References Recordings, Reply(), and cRecordings::Update().
Referenced by Execute().
|
private |
Definition at line 1668 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 1706 of file svdrp.c.
References cDevice::CurrentVolume(), isnumber(), cDevice::PrimaryDevice(), Reply(), cDevice::SetVolume(), cDevice::ToggleMute(), and VOLUMEDELTA.
Referenced by Execute().
|
private |
Definition at line 1730 of file svdrp.c.
References Close(), CMD, CmdCHAN(), CmdCLRE(), CmdDELC(), CmdDELR(), CmdDELT(), CmdEDIT(), CmdGRAB(), CmdHELP(), CmdHITK(), CmdLSTC(), CmdLSTE(), CmdLSTR(), CmdLSTT(), CmdMESG(), CmdMODC(), CmdMODT(), CmdMOVC(), CmdMOVR(), 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 92 of file svdrp.h.
References cFile::IsOpen().
Referenced by cInterface::HasSVDRPConnection().
|
private |
Definition at line 466 of file svdrp.c.
References GetHelpTopic(), MAXHELPTOPIC, and Reply().
bool cSVDRP::Process | ( | void | ) |
Definition at line 1784 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 438 of file svdrp.c.
References esyslog, file, cFile::IsOpen(), Send(), and cString::vsprintf().
Referenced by Close(), CmdCHAN(), CmdCLRE(), CmdCPYR(), CmdDELC(), CmdDELR(), CmdDELT(), CmdEDIT(), CmdGRAB(), CmdHELP(), CmdHITK(), CmdLSTC(), CmdLSTE(), CmdLSTR(), CmdLSTT(), CmdMESG(), CmdMODC(), CmdMODT(), CmdMOVC(), CmdMOVR(), 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(), GetHelpPage(), and SetGrabImageDir().
|
private |
|
private |
|
private |
|
private |
|
private |