Merge remote-tracking branch 'tuxbox/master'

* needs compile fixes
* needs additional tests, of course :-)
This commit is contained in:
Stefan Seyfried
2016-10-22 11:37:40 +02:00
346 changed files with 13372 additions and 6088 deletions

View File

@@ -34,7 +34,6 @@
#define VALGRIND_PARANOIA(x) {}
#endif
int CTimerdClient::adzap_eventID = 0;
unsigned char CTimerdClient::getVersion () const
{
return CTimerdMsg::ACTVERSION;
@@ -306,11 +305,6 @@ int CTimerdClient::addTimerEvent( CTimerd::CTimerEventTypes evType, void* data,
return -1;
}
}
bool adzaptimer = false;
if(evType == CTimerd::TIMER_ADZAP){
evType = CTimerd::TIMER_ZAPTO;
adzaptimer = true;
}
CTimerd::TransferEventInfo tei;
CTimerd::TransferRecordingInfo tri;
CTimerdMsg::commandAddTimer msgAddTimer;
@@ -330,8 +324,7 @@ int CTimerdClient::addTimerEvent( CTimerd::CTimerEventTypes evType, void* data,
}
/* else if(evType == CTimerd::TIMER_NEXTPROGRAM || evType == CTimerd::TIMER_ZAPTO || */
else if (evType == CTimerd::TIMER_ZAPTO ||
evType == CTimerd::TIMER_IMMEDIATE_RECORD ||
evType == CTimerd::TIMER_ADZAP)
evType == CTimerd::TIMER_IMMEDIATE_RECORD)
{
CTimerd::EventInfo *ei=static_cast<CTimerd::EventInfo*>(data);
tei.apids = ei->apids;
@@ -350,6 +343,7 @@ int CTimerdClient::addTimerEvent( CTimerd::CTimerEventTypes evType, void* data,
tri.epg_starttime = ri->epg_starttime;
tri.epgID = ri->epgID;
tri.recordingSafety = ri->recordingSafety;
tri.autoAdjustToEPG = ri->autoAdjustToEPG;
strncpy(tri.recordingDir, ri->recordingDir, RECORD_DIR_MAXLEN-1);
length = sizeof( CTimerd::TransferRecordingInfo);
data = &tri;
@@ -380,18 +374,12 @@ int CTimerdClient::addTimerEvent( CTimerd::CTimerEventTypes evType, void* data,
receive_data((char*)&response, sizeof(response));
close_connection();
if(adzaptimer){
adzap_eventID = response.eventID;//set adzap flag
}
return( response.eventID);
}
//-------------------------------------------------------------------------
void CTimerdClient::removeTimerEvent( int evId)
{
if(evId == adzap_eventID)
adzap_eventID = 0;//reset adzap flag
CTimerdMsg::commandRemoveTimer msgRemoveTimer;
VALGRIND_PARANOIA(msgRemoveTimer);

View File

@@ -61,7 +61,6 @@ class CTimerdClient:private CBasicClient
void registerEvent(unsigned int eventID, unsigned int clientID, const char * const udsName);
void unRegisterEvent(unsigned int eventID, unsigned int clientID);
static int adzap_eventID;
bool isTimerdAvailable(); // check if timerd is running
@@ -112,7 +111,7 @@ class CTimerdClient:private CBasicClient
// adds new record timer event
int addRecordTimerEvent(const t_channel_id channel_id, time_t alarmtime, time_t stoptime,
uint64_t epgID=0, time_t epg_starttime=0, time_t announcetime = 0,
unsigned char apids=TIMERD_APIDS_STD, bool safety=false,std::string recDir="", bool forceAdd=true)
unsigned char apids=TIMERD_APIDS_STD, bool safety=false,bool autoAdjust=false, std::string recDir="", bool forceAdd=true)
{
CTimerd::RecordingInfo eventInfo;
eventInfo.channel_id = channel_id;
@@ -120,6 +119,7 @@ class CTimerdClient:private CBasicClient
eventInfo.epg_starttime = epg_starttime;
eventInfo.apids = apids;
eventInfo.recordingSafety = safety;
eventInfo.autoAdjustToEPG = autoAdjust;
strncpy(eventInfo.recordingDir, recDir.c_str(), RECORD_DIR_MAXLEN);
return addTimerEvent(CTimerd::TIMER_RECORD, &eventInfo, announcetime, alarmtime, stoptime,CTimerd::TIMERREPEAT_ONCE, 0,forceAdd);
};
@@ -133,6 +133,7 @@ class CTimerdClient:private CBasicClient
eventInfo.epg_starttime = epg_starttime;
eventInfo.apids = apids;
eventInfo.recordingSafety = false;
eventInfo.autoAdjustToEPG = false;
return addTimerEvent(CTimerd::TIMER_IMMEDIATE_RECORD, &eventInfo, 0, alarmtime, stoptime);
};
@@ -153,18 +154,6 @@ class CTimerdClient:private CBasicClient
eventInfo.recordingSafety = false;
return addTimerEvent(CTimerd::TIMER_ZAPTO, &eventInfo, announcetime, alarmtime, stoptime);
};
// adds new adzap timer event //pseudo TIMER_ADZAP
int addAdZaptoTimerEvent(const t_channel_id channel_id, time_t alarmtime)
{
CTimerd::EventInfo eventInfo;
eventInfo.channel_id = channel_id;
eventInfo.epgID = 1;
eventInfo.epg_starttime = 0;
eventInfo.apids = 0;
eventInfo.recordingSafety = false;
return addTimerEvent(CTimerd::TIMER_ADZAP, &eventInfo, 0, alarmtime, 0);
};
#if 0
int addNextProgramTimerEvent(CTimerd::EventInfo eventInfo,time_t alarmtime, time_t announcetime = 0, time_t stoptime = 0)

View File

@@ -68,8 +68,8 @@ class CTimerd
TIMER_REMIND,
TIMER_SLEEPTIMER,
TIMER_EXEC_PLUGIN,
TIMER_IMMEDIATE_RECORD,
TIMER_ADZAP
TIMER_IMMEDIATE_RECORD,
TIMER_REMOTEBOX
};
enum CTimerEventStates
@@ -88,6 +88,7 @@ class CTimerd
t_channel_id channel_id;
unsigned char apids;
bool recordingSafety;
bool autoAdjustToEPG;
};
struct TransferEventInfo
@@ -97,6 +98,7 @@ class CTimerd
t_channel_id channel_id;
unsigned char apids;
bool recordingSafety;
bool autoAdjustToEPG;
};
struct TransferRecordingInfo : TransferEventInfo
@@ -117,6 +119,7 @@ class CTimerd
epgID = e.epgID;
epg_starttime = e.epg_starttime;
recordingSafety = e.recordingSafety;
autoAdjustToEPG = e.autoAdjustToEPG;
};
RecordingInfo& operator = (EventInfo& e)
{
@@ -125,6 +128,7 @@ class CTimerd
epgID = e.epgID;
epg_starttime = e.epg_starttime;
recordingSafety = e.recordingSafety;
autoAdjustToEPG = e.autoAdjustToEPG;
return *this;
}
unsigned char apids;
@@ -158,6 +162,9 @@ class CTimerd
char pluginName[EXEC_PLUGIN_NAME_MAXLEN]; //only filled if applicable
char recordingDir[RECORD_DIR_MAXLEN]; //only filled if applicable
char epgTitle[EPG_TITLE_MAXLEN]; //only filled if applicable
char remotebox_ip[16];
int rem_pre;
int rem_post;
bool operator< (const responseGetTimer& a) const
{