00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00030 #if ! defined( MEDIAELEMENTS_HH )
00031 #define MEDIAELEMENTS_HH
00032
00033
00034
00035
00036
00037 #include "storybase.hh"
00038 #include "avstream.hh"
00039
00040
00041 namespace PIAVE {
00042
00047 class AVChunk : public MediaElement
00048 {
00049 public:
00050 AVChunk( InAVFStream * s = 0 );
00051 AVChunk( const std::string& name, InAVFStream * s );
00052 ~AVChunk();
00053
00054 virtual Frame getFrame( Time t );
00055 virtual PropertyNode * getProperties( PropertyNode *p = 0 ) const { return p; }
00056 virtual int fixMe( int fix_lvl=0 );
00057
00058 virtual void print( std::ostream & o, int indent );
00059
00060 const InAVFStream * setAVFStream( InAVFStream * s ) { _stream = s; return _stream; }
00061 void setAVFStreamOffset( Time o ) { _avfStreamOffset = o; }
00062
00063 private:
00064 InAVFStream * _stream;
00065 Time _avfStreamOffset;
00066 };
00067
00068
00069
00070
00071
00072 };
00073
00074
00075 #endif