OggGranuleSeekTable Class Reference

#include <OggGranuleSeekTable.h>

List of all members.

Public Types

typedef pair< unsigned long,
LOOG_INT64 > 
tGranulePair
 A Pair consitsing of a byte position and a granule pos.
typedef map< LOOG_INT64, tGranulePairtSeekMap
typedef pair< LOOG_INT64,
tGranulePair
tSeekPair
 A pair consiting of a real time, and a granule pair, making a triplet.

Public Member Functions

bool addSeekPoint (LOOG_INT64 inTime, unsigned long mStartPos, LOOG_INT64 inGranulePos)
 Add a seek point (which consists of a time in DirectShow units, and a byte offset corresponding to that time, and a granule pos) to the seek table.
bool enabled ()
 Returns whether this table is enabled or disabled.
tSeekMap getSeekMap ()
 Returns a copy of the seek table.
tSeekPair getStartPos (LOOG_INT64 inTime)
 Given a requested seek time in DirectShow units, returns the closest time and byte to the seek time.
 OggGranuleSeekTable (void)
virtual ~OggGranuleSeekTable (void)

Protected Attributes

bool mEnabled
LOOG_INT64 mRealStartPos
tSeekMap mSeekMap
tSeekMap::value_type mSeekValue

Private Member Functions

 OggGranuleSeekTable (const OggGranuleSeekTable &)
OggGranuleSeekTableoperator= (const OggGranuleSeekTable &)


Member Typedef Documentation

typedef pair<unsigned long, LOOG_INT64> OggGranuleSeekTable::tGranulePair
 

A Pair consitsing of a byte position and a granule pos.

Definition at line 52 of file OggGranuleSeekTable.h.

Referenced by addSeekPoint().

typedef map<LOOG_INT64, tGranulePair> OggGranuleSeekTable::tSeekMap
 

Definition at line 56 of file OggGranuleSeekTable.h.

Referenced by getSeekMap().

typedef pair<LOOG_INT64, tGranulePair> OggGranuleSeekTable::tSeekPair
 

A pair consiting of a real time, and a granule pair, making a triplet.

Definition at line 55 of file OggGranuleSeekTable.h.

Referenced by getStartPos(), AutoOggChainGranuleSeekTable::seekPos(), and OggDemuxPacketSourceFilter::SetPositions().


Constructor & Destructor Documentation

OggGranuleSeekTable::OggGranuleSeekTable void   ) 
 

Definition at line 35 of file OggGranuleSeekTable.cpp.

References mSeekMap, and true.

OggGranuleSeekTable::~OggGranuleSeekTable void   )  [virtual]
 

Definition at line 44 of file OggGranuleSeekTable.cpp.

OggGranuleSeekTable::OggGranuleSeekTable const OggGranuleSeekTable  )  [private]
 


Member Function Documentation

bool OggGranuleSeekTable::addSeekPoint LOOG_INT64  inTime,
unsigned long  mStartPos,
LOOG_INT64  inGranulePos
 

Add a seek point (which consists of a time in DirectShow units, and a byte offset corresponding to that time, and a granule pos) to the seek table.

Definition at line 52 of file OggGranuleSeekTable.cpp.

References mSeekMap, and tGranulePair.

Referenced by AutoOggChainGranuleSeekTable::acceptOggPage().

bool OggGranuleSeekTable::enabled  ) 
 

Returns whether this table is enabled or disabled.

Definition at line 49 of file OggGranuleSeekTable.cpp.

OggGranuleSeekTable::tSeekMap OggGranuleSeekTable::getSeekMap  ) 
 

Returns a copy of the seek table.

Note that this method returns a copy of the seek table, not the actual seek table used by the class. So, feel free to corrupt your copy to your heart's leisure.

Definition at line 84 of file OggGranuleSeekTable.cpp.

References tSeekMap.

OggGranuleSeekTable::tSeekPair OggGranuleSeekTable::getStartPos LOOG_INT64  inTime  ) 
 

Given a requested seek time in DirectShow units, returns the closest time and byte to the seek time.

Returns a tSeekPair whose first element is the actual closest possible time that can be seeked to (which will always be either before or at the requested seek position). The second element is the number of bytes into the stream where the first page of the actual seek time occurs.

Definition at line 71 of file OggGranuleSeekTable.cpp.

References mSeekMap, and tSeekPair.

OggGranuleSeekTable& OggGranuleSeekTable::operator= const OggGranuleSeekTable  )  [private]
 


Member Data Documentation

bool OggGranuleSeekTable::mEnabled [protected]
 

Definition at line 76 of file OggGranuleSeekTable.h.

LOOG_INT64 OggGranuleSeekTable::mRealStartPos [protected]
 

Definition at line 73 of file OggGranuleSeekTable.h.

tSeekMap OggGranuleSeekTable::mSeekMap [protected]
 

Definition at line 71 of file OggGranuleSeekTable.h.

Referenced by addSeekPoint(), getStartPos(), and OggGranuleSeekTable().

tSeekMap::value_type OggGranuleSeekTable::mSeekValue [protected]
 

Definition at line 72 of file OggGranuleSeekTable.h.


The documentation for this class was generated from the following files:
Generated on Fri Feb 17 00:01:42 2006 for oggdsf by  doxygen 1.3.9