Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MOVIEGENERATOR_H_HEADER_INCLUDED
00020
00021 #define MOVIEGENERATOR_H_HEADER_INCLUDED
00022
00023
00024 #include "mitkCommon.h"
00025 #include "MitkExtExports.h"
00026 #include "mitkStepper.h"
00027 #include "mitkBaseRenderer.h"
00028
00029 namespace mitk {
00030
00031 class MitkExt_EXPORT MovieGenerator : public itk::LightObject
00032 {
00033 public:
00034
00035 mitkClassMacro(MovieGenerator, itk::LightObject);
00036
00037
00038 static Pointer New(void);
00039
00041 virtual void SetStepper( Stepper *stepper ) { m_stepper = stepper; }
00042
00044 virtual void SetRenderer( BaseRenderer *renderer ) { m_renderer = renderer; }
00045
00047 virtual void SetFileName( const char *fileName ) { strcpy( m_fileName, fileName ); }
00048
00050 virtual bool WriteMovie();
00051
00053
00054
00055 virtual bool WriteCurrentFrameToMovie();
00057 virtual void ReleaseMovieWriter();
00058
00059 virtual void SetFrameRate(unsigned int rate);
00060
00061 unsigned int GetFrameRate();
00062
00063 protected:
00064
00066 MovieGenerator();
00067
00068
00070 virtual bool InitGenerator() = 0;
00071
00073 virtual bool AddFrame( void *data ) = 0;
00074
00076 virtual bool TerminateGenerator() = 0;
00077
00078
00080 char m_fileName[1024];
00081
00083 Stepper *m_stepper;
00084
00086 BaseRenderer *m_renderer;
00087
00089 int m_width, m_height;
00090
00091 bool m_initialized;
00092
00093 unsigned int m_FrameRate;
00094 };
00095
00096 }
00097
00098 #endif