Ich habe mir daraufhin einmal den Quelltext der neutrino.cpp angeschaut, um herauszufinden, worin der Unterschied des Umschaltens durch "Umschalten bei Ankündigung" und durch einen Umschalttimer besteht.
Für das Umschalten bei Ankündigung ist wohl folgender Code zuständig:
Code: Alles auswählen
else if( msg == NeutrinoMessages::ANNOUNCE_RECORD)
{
...
if( g_settings.recording_zap_on_announce )
{
if(recordingstatus==0)
{
t_channel_id channel_id=((CTimerd::RecordingInfo*)data)->channel_id;
g_Zapit->zapTo_serviceID_NOWAIT(channel_id);
}
}
...
}
Code: Alles auswählen
else if( msg == NeutrinoMessages::ZAPTO)
{
CTimerd::EventInfo * eventinfo;
eventinfo = (CTimerd::EventInfo *) data;
if(recordingstatus==0)
{
bool isTVMode = g_Zapit->isChannelTVChannel(eventinfo->channel_id);
if ((!isTVMode) && (mode != mode_radio))
{
radioMode(false);
channelsInit(init_mode_switch, mode_tv);
}
else if (isTVMode && (mode != mode_tv))
{
tvMode(false);
channelsInit(init_mode_switch, mode_radio);
}
channelList->zapTo_ChannelID(eventinfo->channel_id);
}
delete (unsigned char*) data;
return messages_return::handled;
}