live
MatroskaFileServerDemux Class Reference

#include <MatroskaFileServerDemux.hh>

Inheritance diagram for MatroskaFileServerDemux:
Collaboration diagram for MatroskaFileServerDemux:

Public Types

typedef void onCreationFunc(MatroskaFileServerDemux *newDemux, void *clientData)

Public Member Functions

ServerMediaSubsessionnewServerMediaSubsession ()
ServerMediaSubsessionnewServerMediaSubsession (unsigned &resultTrackNumber)
ServerMediaSubsessionnewServerMediaSubsessionByTrackNumber (unsigned trackNumber)
MatroskaFileourMatroskaFile ()
char const * fileName () const
float fileDuration () const
FramedSourcenewDemuxedTrack (unsigned clientSessionId, unsigned trackNumber)
UsageEnvironmentenvir () const
char const * name () const
virtual Boolean isSource () const
virtual Boolean isSink () const
virtual Boolean isRTCPInstance () const
virtual Boolean isRTSPClient () const
virtual Boolean isRTSPServer () const
virtual Boolean isMediaSession () const
virtual Boolean isServerMediaSession () const

Static Public Member Functions

static void createNew (UsageEnvironment &env, char const *fileName, onCreationFunc *onCreation, void *onCreationClientData, char const *preferredLanguage="eng")
static Boolean lookupByName (UsageEnvironment &env, char const *mediumName, Medium *&resultMedium)
static void close (UsageEnvironment &env, char const *mediumName)
static void close (Medium *medium)

Protected Member Functions

TaskTokennextTask ()

Private Member Functions

 MatroskaFileServerDemux (UsageEnvironment &env, char const *fileName, onCreationFunc *onCreation, void *onCreationClientData, char const *preferredLanguage)
virtual ~MatroskaFileServerDemux ()
void onMatroskaFileCreation (MatroskaFile *newFile)
void onDemuxDeletion (MatroskaDemux *demuxBeingDeleted)

Static Private Member Functions

static void onMatroskaFileCreation (MatroskaFile *newFile, void *clientData)
static void onDemuxDeletion (void *clientData, MatroskaDemux *demuxBeingDeleted)

Private Attributes

char const * fFileName
onCreationFuncfOnCreation
void * fOnCreationClientData
MatroskaFilefOurMatroskaFile
u_int8_t fNextTrackTypeToCheck
unsigned fLastClientSessionId
MatroskaDemuxfLastCreatedDemux
UsageEnvironmentfEnviron
char fMediumName [mediumNameMaxLen]
TaskToken fNextTask

Detailed Description

Definition at line 32 of file MatroskaFileServerDemux.hh.

Member Typedef Documentation

◆ onCreationFunc

typedef void MatroskaFileServerDemux::onCreationFunc(MatroskaFileServerDemux *newDemux, void *clientData)

Definition at line 34 of file MatroskaFileServerDemux.hh.

Constructor & Destructor Documentation

◆ MatroskaFileServerDemux()

MatroskaFileServerDemux::MatroskaFileServerDemux ( UsageEnvironment & env,
char const * fileName,
onCreationFunc * onCreation,
void * onCreationClientData,
char const * preferredLanguage )
private

References fileName().

◆ ~MatroskaFileServerDemux()

virtual MatroskaFileServerDemux::~MatroskaFileServerDemux ( )
privatevirtual

Member Function Documentation

◆ close() [1/2]

void Medium::close ( Medium * medium)
staticinherited

References Medium().

◆ close() [2/2]

void Medium::close ( UsageEnvironment & env,
char const * mediumName )
staticinherited

◆ createNew()

void MatroskaFileServerDemux::createNew ( UsageEnvironment & env,
char const * fileName,
onCreationFunc * onCreation,
void * onCreationClientData,
char const * preferredLanguage = "eng" )
static

References fileName().

◆ envir()

UsageEnvironment & Medium::envir ( ) const
inlineinherited

Definition at line 59 of file Media.hh.

59{return fEnviron;}
UsageEnvironment & fEnviron
Definition Media.hh:82

References fEnviron.

Referenced by MediaSubsession::env(), GenericMediaServer::ClientConnection::envir(), GenericMediaServer::ClientSession::envir(), and RTPInterface::envir().

◆ fileDuration()

float MatroskaFileServerDemux::fileDuration ( ) const
inline

Definition at line 56 of file MatroskaFileServerDemux.hh.

56{ return fOurMatroskaFile->fileDuration(); }
float fileDuration()

References MatroskaFile::fileDuration(), and fOurMatroskaFile.

◆ fileName()

char const * MatroskaFileServerDemux::fileName ( ) const
inline

Definition at line 55 of file MatroskaFileServerDemux.hh.

55{ return fFileName; }

References fFileName.

Referenced by createNew(), and MatroskaFileServerDemux().

◆ isMediaSession()

virtual Boolean Medium::isMediaSession ( ) const
virtualinherited

Reimplemented in MediaSession.

◆ isRTCPInstance()

virtual Boolean Medium::isRTCPInstance ( ) const
virtualinherited

Reimplemented in RTCPInstance.

◆ isRTSPClient()

virtual Boolean Medium::isRTSPClient ( ) const
virtualinherited

Reimplemented in RTSPClient.

◆ isRTSPServer()

virtual Boolean Medium::isRTSPServer ( ) const
virtualinherited

Reimplemented in RTSPServer.

◆ isServerMediaSession()

virtual Boolean Medium::isServerMediaSession ( ) const
virtualinherited

Reimplemented in ServerMediaSession.

◆ isSink()

virtual Boolean Medium::isSink ( ) const
virtualinherited

Reimplemented in MediaSink.

◆ isSource()

virtual Boolean Medium::isSource ( ) const
virtualinherited

Reimplemented in MediaSource.

◆ lookupByName()

Boolean Medium::lookupByName ( UsageEnvironment & env,
char const * mediumName,
Medium *& resultMedium )
staticinherited

References Medium().

◆ name()

char const * Medium::name ( ) const
inlineinherited

Definition at line 61 of file Media.hh.

61{return fMediumName;}
char fMediumName[mediumNameMaxLen]
Definition Media.hh:83

References fMediumName.

Referenced by QuickTimeFileSink::_atom(), RTSPServer::lookupByName(), RTCPInstance::sendAppPacket(), and OnDemandServerMediaSubsession::sendRTCPAppPacket().

◆ newDemuxedTrack()

FramedSource * MatroskaFileServerDemux::newDemuxedTrack ( unsigned clientSessionId,
unsigned trackNumber )

◆ newServerMediaSubsession() [1/2]

ServerMediaSubsession * MatroskaFileServerDemux::newServerMediaSubsession ( )

◆ newServerMediaSubsession() [2/2]

ServerMediaSubsession * MatroskaFileServerDemux::newServerMediaSubsession ( unsigned & resultTrackNumber)

◆ newServerMediaSubsessionByTrackNumber()

ServerMediaSubsession * MatroskaFileServerDemux::newServerMediaSubsessionByTrackNumber ( unsigned trackNumber)

◆ nextTask()

TaskToken & Medium::nextTask ( )
inlineprotectedinherited

Definition at line 77 of file Media.hh.

77 {
78 return fNextTask;
79 }
TaskToken fNextTask
Definition Media.hh:84

References fNextTask.

◆ onDemuxDeletion() [1/2]

void MatroskaFileServerDemux::onDemuxDeletion ( MatroskaDemux * demuxBeingDeleted)
private

◆ onDemuxDeletion() [2/2]

void MatroskaFileServerDemux::onDemuxDeletion ( void * clientData,
MatroskaDemux * demuxBeingDeleted )
staticprivate

◆ onMatroskaFileCreation() [1/2]

void MatroskaFileServerDemux::onMatroskaFileCreation ( MatroskaFile * newFile)
private

◆ onMatroskaFileCreation() [2/2]

void MatroskaFileServerDemux::onMatroskaFileCreation ( MatroskaFile * newFile,
void * clientData )
staticprivate

◆ ourMatroskaFile()

MatroskaFile * MatroskaFileServerDemux::ourMatroskaFile ( )
inline

Definition at line 54 of file MatroskaFileServerDemux.hh.

54{ return fOurMatroskaFile; }

References fOurMatroskaFile.

Field Documentation

◆ fEnviron

UsageEnvironment& Medium::fEnviron
privateinherited

Definition at line 82 of file Media.hh.

Referenced by envir().

◆ fFileName

char const* MatroskaFileServerDemux::fFileName
private

Definition at line 75 of file MatroskaFileServerDemux.hh.

Referenced by fileName().

◆ fLastClientSessionId

unsigned MatroskaFileServerDemux::fLastClientSessionId
private

Definition at line 84 of file MatroskaFileServerDemux.hh.

◆ fLastCreatedDemux

MatroskaDemux* MatroskaFileServerDemux::fLastCreatedDemux
private

Definition at line 85 of file MatroskaFileServerDemux.hh.

◆ fMediumName

char Medium::fMediumName[mediumNameMaxLen]
privateinherited

Definition at line 83 of file Media.hh.

Referenced by name().

◆ fNextTask

TaskToken Medium::fNextTask
privateinherited

Definition at line 84 of file Media.hh.

Referenced by nextTask().

◆ fNextTrackTypeToCheck

u_int8_t MatroskaFileServerDemux::fNextTrackTypeToCheck
private

Definition at line 81 of file MatroskaFileServerDemux.hh.

◆ fOnCreation

onCreationFunc* MatroskaFileServerDemux::fOnCreation
private

Definition at line 76 of file MatroskaFileServerDemux.hh.

◆ fOnCreationClientData

void* MatroskaFileServerDemux::fOnCreationClientData
private

Definition at line 77 of file MatroskaFileServerDemux.hh.

◆ fOurMatroskaFile

MatroskaFile* MatroskaFileServerDemux::fOurMatroskaFile
private

Definition at line 78 of file MatroskaFileServerDemux.hh.

Referenced by fileDuration(), and ourMatroskaFile().


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