![]() |
Kodi Documentation
18.0
Kodi is an open source media player and entertainment hub.
|
#include <EpgContainer.h>
Public Member Functions | |
CPVREpgContainer (void) | |
Create a new EPG table container. More... | |
~CPVREpgContainer (void) override | |
Destroy this instance. More... | |
CPVREpgDatabasePtr | GetEpgDatabase () const |
Get a pointer to the database instance. More... | |
void | Start (bool bAsync) |
Start the EPG update thread. More... | |
void | Stop (void) |
Stop the EPG update thread. More... | |
void | Clear () |
Clear all EPG entries. More... | |
bool | IsStarted (void) const |
Check whether the EpgContainer has fully started. More... | |
bool | DeleteEpg (const CPVREpgPtr &epg, bool bDeleteFromDatabase=false) |
Delete an EPG table from this container. More... | |
void | Notify (const Observable &obs, const ObservableMessage msg) override |
Process a notification from an observable. More... | |
CPVREpgPtr | CreateChannelEpg (const CPVRChannelPtr &channel) |
Create the EPg for a given channel. More... | |
int | GetEPGSearch (CFileItemList &results, const CPVREpgSearchFilter &filter) |
Get all EPG tables and apply a filter. More... | |
const CDateTime | GetFirstEPGDate (void) |
Get the start time of the first entry. More... | |
const CDateTime | GetLastEPGDate (void) |
Get the end time of the last entry. More... | |
CPVREpgPtr | GetById (int iEpgId) const |
Get an EPG table given it's ID. More... | |
CPVREpgInfoTagPtr | GetTagById (const CPVRChannelPtr &channel, unsigned int iBroadcastId) const |
Get the EPG event with the given event id. More... | |
std::vector< CPVREpgInfoTagPtr > | GetEpgTagsForTimer (const CPVRTimerInfoTagPtr &timer) const |
Get the EPG events matching the given timer. More... | |
bool | IgnoreDB () const |
Check whether data should be persisted to the EPG database. More... | |
void | SetHasPendingUpdates (bool bHasPendingUpdates=true) |
Notify EPG container that there are pending manual EPG updates. More... | |
void | UpdateRequest (int iClientID, unsigned int iUniqueChannelID) |
A client triggered an epg update request for a channel. More... | |
void | UpdateFromClient (const CPVREpgInfoTagPtr &tag, EPG_EVENT_STATE eNewState) |
A client announced an updated epg tag for a channel. More... | |
int | GetPastDaysToDisplay () const |
Get the number of past days to show in the guide and to import from backends. More... | |
int | GetFutureDaysToDisplay () const |
Get the number of future days to show in the guide and to import from backends. More... | |
void | OnPlaybackStarted (const CFileItemPtr &item) |
Inform the epg container that playback of an item just started. More... | |
void | OnPlaybackStopped (const CFileItemPtr &item) |
Inform the epg container that playback of an item was stopped due to user interaction. More... | |
![]() | |
Observer ()=default | |
virtual | ~Observer ()=default |
![]() | |
Observable ()=default | |
virtual | ~Observable ()=default |
virtual Observable & | operator= (const Observable &observable) |
virtual void | RegisterObserver (Observer *obs) |
Register an observer. More... | |
virtual void | UnregisterObserver (Observer *obs) |
Unregister an observer. More... | |
virtual void | NotifyObservers (const ObservableMessage message=ObservableMessageNone) |
Send a message to all observers when m_bObservableChanged is true. More... | |
virtual void | SetChanged (bool bSetTo=true) |
Mark an observable changed. More... | |
virtual bool | IsObserving (const Observer &obs) const |
Check whether this observable is being observed by an observer. More... | |
Friends | |
class | CPVREpgDatabase |
Additional Inherited Members | |
![]() | |
void | SendMessage (const ObservableMessage message) |
Send a message to all observer when m_bObservableChanged is true. More... | |
![]() | |
std::atomic< bool > | m_bObservableChanged {false} |
std::vector< Observer * > | m_observers |
CCriticalSection | m_obsCritSection |
PVR::CPVREpgContainer::CPVREpgContainer | ( | void | ) |
Create a new EPG table container.
|
override |
Destroy this instance.
void PVR::CPVREpgContainer::Clear | ( | ) |
Clear all EPG entries.
CPVREpgPtr PVR::CPVREpgContainer::CreateChannelEpg | ( | const CPVRChannelPtr & | channel | ) |
Create the EPg for a given channel.
channel | The channel. |
bool PVR::CPVREpgContainer::DeleteEpg | ( | const CPVREpgPtr & | epg, |
bool | bDeleteFromDatabase = false |
||
) |
Delete an EPG table from this container.
epg | The table to delete. |
bDeleteFromDatabase | Delete this table from the database too if true. |
CPVREpgPtr PVR::CPVREpgContainer::GetById | ( | int | iEpgId | ) | const |
Get an EPG table given it's ID.
iEpgId | The database ID of the table. |
CPVREpgDatabasePtr PVR::CPVREpgContainer::GetEpgDatabase | ( | ) | const |
Get a pointer to the database instance.
int PVR::CPVREpgContainer::GetEPGSearch | ( | CFileItemList & | results, |
const CPVREpgSearchFilter & | filter | ||
) |
Get all EPG tables and apply a filter.
results | The fileitem list to store the results in. |
filter | The filter to apply. |
std::vector< CPVREpgInfoTagPtr > PVR::CPVREpgContainer::GetEpgTagsForTimer | ( | const CPVRTimerInfoTagPtr & | timer | ) | const |
Get the EPG events matching the given timer.
timer | The timer to get the matching events for. |
Get the start time of the first entry.
int PVR::CPVREpgContainer::GetFutureDaysToDisplay | ( | ) | const |
Get the number of future days to show in the guide and to import from backends.
Get the end time of the last entry.
int PVR::CPVREpgContainer::GetPastDaysToDisplay | ( | ) | const |
Get the number of past days to show in the guide and to import from backends.
CPVREpgInfoTagPtr PVR::CPVREpgContainer::GetTagById | ( | const CPVRChannelPtr & | channel, |
unsigned int | iBroadcastId | ||
) | const |
Get the EPG event with the given event id.
channel | The channel to get the event for. |
iBroadcastId | The event id to get |
bool PVR::CPVREpgContainer::IgnoreDB | ( | ) | const |
Check whether data should be persisted to the EPG database.
bool PVR::CPVREpgContainer::IsStarted | ( | void | ) | const |
Check whether the EpgContainer has fully started.
|
overridevirtual |
Process a notification from an observable.
obs | The observable that sent the update. |
msg | The update message. |
Implements Observer.
void PVR::CPVREpgContainer::OnPlaybackStarted | ( | const CFileItemPtr & | item | ) |
Inform the epg container that playback of an item just started.
item | The item that started to play. |
void PVR::CPVREpgContainer::OnPlaybackStopped | ( | const CFileItemPtr & | item | ) |
Inform the epg container that playback of an item was stopped due to user interaction.
item | The item that stopped to play. |
void PVR::CPVREpgContainer::SetHasPendingUpdates | ( | bool | bHasPendingUpdates = true | ) |
Notify EPG container that there are pending manual EPG updates.
bHasPendingUpdates | The new value |
void PVR::CPVREpgContainer::Start | ( | bool | bAsync | ) |
Start the EPG update thread.
bAsync | Should the EPG container starts asynchronously |
void PVR::CPVREpgContainer::UpdateFromClient | ( | const CPVREpgInfoTagPtr & | tag, |
EPG_EVENT_STATE | eNewState | ||
) |
A client announced an updated epg tag for a channel.
tag | The epg tag containing the updated data |
eNewState | The kind of change (CREATED, UPDATED, DELETED) |
void PVR::CPVREpgContainer::UpdateRequest | ( | int | iClientID, |
unsigned int | iUniqueChannelID | ||
) |
A client triggered an epg update request for a channel.
iClientID | The id of the client which triggered the update request |
iUniqueChannelID | The uid of the channel for which the epg shall be updated |
|
friend |