VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkFFMPEGWriter.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00034 #ifndef __vtkFFMPEGWriter_h 00035 #define __vtkFFMPEGWriter_h 00036 00037 #include "vtkIOFFMPEGModule.h" // For export macro 00038 #include "vtkGenericMovieWriter.h" 00039 00040 class vtkFFMPEGWriterInternal; 00041 00042 class VTKIOFFMPEG_EXPORT vtkFFMPEGWriter : public vtkGenericMovieWriter 00043 { 00044 public: 00045 static vtkFFMPEGWriter *New(); 00046 vtkTypeMacro(vtkFFMPEGWriter,vtkGenericMovieWriter); 00047 void PrintSelf(ostream& os, vtkIndent indent); 00048 00050 00052 void Start(); 00053 void Write(); 00054 void End(); 00056 00058 00060 vtkSetClampMacro(Quality, int, 0, 2); 00061 vtkGetMacro(Quality, int); 00063 00065 00067 vtkSetMacro(Compression, bool); 00068 vtkGetMacro(Compression, bool); 00069 vtkBooleanMacro(Compression, bool); 00071 00073 00074 vtkSetClampMacro(Rate, int , 1, 5000); 00075 vtkGetMacro(Rate, int); 00077 00079 00080 vtkSetMacro(BitRate, int); 00081 vtkGetMacro(BitRate, int); 00083 00085 00086 vtkSetMacro(BitRateTolerance, int); 00087 vtkGetMacro(BitRateTolerance, int); 00089 00090 protected: 00091 vtkFFMPEGWriter(); 00092 ~vtkFFMPEGWriter(); 00093 00094 vtkFFMPEGWriterInternal *Internals; 00095 00096 int Initialized; 00097 int Quality; 00098 int Rate; 00099 int BitRate; 00100 int BitRateTolerance; 00101 bool Compression; 00102 00103 private: 00104 vtkFFMPEGWriter(const vtkFFMPEGWriter&); // Not implemented 00105 void operator=(const vtkFFMPEGWriter&); // Not implemented 00106 }; 00107 00108 #endif