VTK
dox/Interaction/Widgets/vtkPlaybackRepresentation.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkPlaybackRepresentation.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 =========================================================================*/
00029 #ifndef __vtkPlaybackRepresentation_h
00030 #define __vtkPlaybackRepresentation_h
00031 
00032 #include "vtkInteractionWidgetsModule.h" // For export macro
00033 #include "vtkBorderRepresentation.h"
00034 
00035 class vtkRenderer;
00036 class vtkRenderWindowInteractor;
00037 class vtkPoints;
00038 class vtkPolyData;
00039 class vtkTransformPolyDataFilter;
00040 class vtkPolyDataMapper2D;
00041 class vtkProperty2D;
00042 class vtkActor2D;
00043 
00044 class VTKINTERACTIONWIDGETS_EXPORT vtkPlaybackRepresentation : public vtkBorderRepresentation
00045 {
00046 public:
00048   static vtkPlaybackRepresentation *New();
00049 
00051 
00052   vtkTypeMacro(vtkPlaybackRepresentation,vtkBorderRepresentation);
00053   void PrintSelf(ostream& os, vtkIndent indent);
00055 
00057 
00059   vtkGetObjectMacro(Property,vtkProperty2D);
00061 
00063 
00064   virtual void Play() {}
00065   virtual void Stop() {}
00066   virtual void ForwardOneFrame() {}
00067   virtual void BackwardOneFrame() {}
00068   virtual void JumpToBeginning() {}
00069   virtual void JumpToEnd() {}
00071 
00073 
00074   virtual void BuildRepresentation();
00075   virtual void GetSize(double size[2])
00076     {size[0]=12.0; size[1]=2.0;}
00078 
00080 
00082   virtual void GetActors2D(vtkPropCollection*);
00083   virtual void ReleaseGraphicsResources(vtkWindow*);
00084   virtual int RenderOverlay(vtkViewport*);
00085   virtual int RenderOpaqueGeometry(vtkViewport*);
00086   virtual int RenderTranslucentPolygonalGeometry(vtkViewport*);
00087   virtual int HasTranslucentPolygonalGeometry();
00089 
00090 protected:
00091   vtkPlaybackRepresentation();
00092   ~vtkPlaybackRepresentation();
00093 
00094   // representation geometry
00095   vtkPoints                  *Points;
00096   vtkPolyData                *PolyData;
00097   vtkTransformPolyDataFilter *TransformFilter;
00098   vtkPolyDataMapper2D        *Mapper;
00099   vtkProperty2D              *Property;
00100   vtkActor2D                 *Actor;
00101 
00102 private:
00103   vtkPlaybackRepresentation(const vtkPlaybackRepresentation&);  //Not implemented
00104   void operator=(const vtkPlaybackRepresentation&);  //Not implemented
00105 };
00106 
00107 #endif