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

The object carousel is transmitted as a directed graph. More...

#include <dsmcccache.h>

Collaboration diagram for DSMCCCache:
Collaboration graph
[legend]

Public Member Functions

 DSMCCCache (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 *)
 
static void AddDirInfo (DSMCCCacheDir *dir, const BiopBinding *)
 

Public Attributes

Dsmccm_Dsmcc {nullptr}
 

Protected Member Functions

DSMCCCacheFileFindFileData (DSMCCCacheReference &ref)
 
DSMCCCacheDirFindDir (DSMCCCacheReference &ref)
 
DSMCCCacheDirFindGateway (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 94 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 134 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ Directory()

DSMCCCacheDir * DSMCCCache::Directory ( const DSMCCCacheReference ref)

Definition at line 157 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ AddFileInfo()

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

Definition at line 207 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ AddDirInfo()

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

Definition at line 224 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessDir().

◆ CacheFileData()

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

Definition at line 180 of file dsmcccache.cpp.

Referenced by BiopMessage::ProcessFile().

◆ SetGateway()

void DSMCCCache::SetGateway ( const DSMCCCacheReference ref)

Definition at line 328 of file dsmcccache.cpp.

Referenced by Dsmcc::ProcessDownloadServerInitiate().

◆ GetDSMObject()

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

Definition at line 282 of file dsmcccache.cpp.

◆ FindFileData()

DSMCCCacheFile * DSMCCCache::FindFileData ( DSMCCCacheReference ref)
protected

Definition at line 241 of file dsmcccache.cpp.

Referenced by GetDSMObject().

◆ FindDir()

DSMCCCacheDir * DSMCCCache::FindDir ( DSMCCCacheReference ref)
protected

Definition at line 253 of file dsmcccache.cpp.

Referenced by GetDSMObject().

◆ FindGateway()

DSMCCCacheDir * DSMCCCache::FindGateway ( DSMCCCacheReference ref)
protected

Definition at line 265 of file dsmcccache.cpp.

Referenced by GetDSMObject().

Member Data Documentation

◆ m_GatewayRef

DSMCCCacheReference DSMCCCache::m_GatewayRef
protected

Definition at line 124 of file dsmcccache.h.

Referenced by GetDSMObject(), and SetGateway().

◆ m_Directories

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

Definition at line 127 of file dsmcccache.h.

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

◆ m_Gateways

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

Definition at line 128 of file dsmcccache.h.

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

◆ m_Files

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

Definition at line 129 of file dsmcccache.h.

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

◆ m_Dsmcc

Dsmcc* DSMCCCache::m_Dsmcc {nullptr}

Definition at line 132 of file dsmcccache.h.

Referenced by DSMCCCache(), and BiopMessage::ProcessDir().


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