MythTV  master
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
DSMCCCache Class Reference

#include <libmythtv/mheg/dsmcccache.h>

Collaboration diagram for DSMCCCache:
[legend]

Public Member Functions

 DSMCCCache (Dsmcc *dsmcc)
 
 ~DSMCCCache ()
 
DSMCCCacheDirSrg (const DSMCCCacheReference &ref)
 
DSMCCCacheDirDirectory (const DSMCCCacheReference &ref)
 
void CacheFileData (const DSMCCCacheReference &ref, const QByteArray &data)
 
void SetGateway (const DSMCCCacheReference &ref)
 
int GetDSMObject (QStringList &objectPath, QByteArray &result)
 

Static Public Member Functions

static void AddFileInfo (DSMCCCacheDir *dir, const BiopBinding *pBB)
 
static void AddDirInfo (DSMCCCacheDir *dir, const BiopBinding *pBB)
 

Public Attributes

Dsmccm_dsmcc {nullptr}
 

Protected Member Functions

DSMCCCacheFileFindFileData (const DSMCCCacheReference &ref)
 
DSMCCCacheDirFindDir (const DSMCCCacheReference &ref)
 
DSMCCCacheDirFindGateway (const DSMCCCacheReference &ref)
 

Protected Attributes

DSMCCCacheReference m_gatewayRef
 
QMap< DSMCCCacheReference, DSMCCCacheDir * > m_directories
 
QMap< DSMCCCacheReference, DSMCCCacheDir * > m_gateways
 
QMap< DSMCCCacheReference, DSMCCCacheFile * > m_files
 

Detailed Description

The object carousel is transmitted as a directed graph. The leaves are files and the intermediate nodes are directories. A directory can contain references to files or to other directories. Certain directories, known as gateways, are special and represent roots of the graph i.e. they are not themselves referred to by other directories. One of these gateways is referenced by a DownloadServerInitiate message and is the root for the particular carousel. Crucially, directories and files may be shared between directories and gateways. For example, the BBC radio channels Radio 1, Radio 2, Radio 3 and Radio 4 all share the same object carousel and differ only in the DownloadServerInitiate message.

Definition at line 86 of file dsmcccache.h.

Constructor & Destructor Documentation

◆ DSMCCCache()

DSMCCCache::DSMCCCache ( Dsmcc dsmcc)
explicit

Definition at line 31 of file dsmcccache.cpp.

◆ ~DSMCCCache()

DSMCCCache::~DSMCCCache ( )

Definition at line 37 of file dsmcccache.cpp.

Member Function Documentation

◆ Srg()

DSMCCCacheDir * DSMCCCache::Srg ( const DSMCCCacheReference ref)

Definition at line 127 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ Directory()

DSMCCCacheDir * DSMCCCache::Directory ( const DSMCCCacheReference ref)

Definition at line 150 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ AddFileInfo()

void DSMCCCache::AddFileInfo ( DSMCCCacheDir dir,
const BiopBinding pBB 
)
static

Definition at line 199 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ AddDirInfo()

void DSMCCCache::AddDirInfo ( DSMCCCacheDir dir,
const BiopBinding pBB 
)
static

Definition at line 216 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ CacheFileData()

void DSMCCCache::CacheFileData ( const DSMCCCacheReference ref,
const QByteArray &  data 
)

Definition at line 173 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessFile().

◆ SetGateway()

void DSMCCCache::SetGateway ( const DSMCCCacheReference ref)

Definition at line 320 of file dsmcccache.cpp.

Referenced by Dsmcc::ProcessDownloadServerInitiate().

◆ GetDSMObject()

int DSMCCCache::GetDSMObject ( QStringList &  objectPath,
QByteArray &  result 
)

Definition at line 274 of file dsmcccache.cpp.

◆ FindFileData()

DSMCCCacheFile * DSMCCCache::FindFileData ( const DSMCCCacheReference ref)
protected

Definition at line 233 of file dsmcccache.cpp.

Referenced by GetDSMObject().

◆ FindDir()

DSMCCCacheDir * DSMCCCache::FindDir ( const DSMCCCacheReference ref)
protected

Definition at line 245 of file dsmcccache.cpp.

Referenced by GetDSMObject().

◆ FindGateway()

DSMCCCacheDir * DSMCCCache::FindGateway ( const DSMCCCacheReference ref)
protected

Definition at line 257 of file dsmcccache.cpp.

Referenced by GetDSMObject().

Member Data Documentation

◆ m_gatewayRef

DSMCCCacheReference DSMCCCache::m_gatewayRef
protected

Definition at line 116 of file dsmcccache.h.

Referenced by GetDSMObject(), and SetGateway().

◆ m_directories

QMap<DSMCCCacheReference, DSMCCCacheDir*> DSMCCCache::m_directories
protected

Definition at line 119 of file dsmcccache.h.

Referenced by Directory(), FindDir(), and ~DSMCCCache().

◆ m_gateways

QMap<DSMCCCacheReference, DSMCCCacheDir*> DSMCCCache::m_gateways
protected

Definition at line 120 of file dsmcccache.h.

Referenced by FindGateway(), Srg(), and ~DSMCCCache().

◆ m_files

QMap<DSMCCCacheReference, DSMCCCacheFile*> DSMCCCache::m_files
protected

Definition at line 121 of file dsmcccache.h.

Referenced by CacheFileData(), FindFileData(), and ~DSMCCCache().

◆ m_dsmcc

Dsmcc* DSMCCCache::m_dsmcc {nullptr}

Definition at line 124 of file dsmcccache.h.

Referenced by BiopMessage::ProcessDir().


The documentation for this class was generated from the following files: