Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

GUI/Client/vtkPVTimeLine.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Module:    $RCSfile: vtkPVTimeLine.h,v $
00004 
00005   Copyright (c) Kitware, Inc.
00006   All rights reserved.
00007   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00008 
00009      This software is distributed WITHOUT ANY WARRANTY; without even
00010      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00011      PURPOSE.  See the above copyright notice for more information.
00012 
00013 =========================================================================*/
00024 #ifndef __vtkPVTimeLine_h
00025 #define __vtkPVTimeLine_h
00026 
00027 #include "vtkKWParameterValueFunctionEditor.h"
00028 
00029 class vtkPVAnimationCue;
00030 class vtkPVTraceHelper;
00031 
00032 class VTK_EXPORT vtkPVTimeLine : public vtkKWParameterValueFunctionEditor
00033 {
00034 public:
00035   static vtkPVTimeLine* New();
00036   vtkTypeRevisionMacro(vtkPVTimeLine, vtkKWParameterValueFunctionEditor);
00037   void PrintSelf(ostream& os, vtkIndent indent);
00038 
00040   virtual void Create(vtkKWApplication* app);
00041   
00042   virtual int HasFunction();
00043   virtual int GetFunctionSize();
00044 
00047   int GetParameterBounds(double* bounds);
00048 
00050   void RemoveAll();
00051 
00053 
00055   void MoveStartToParameter(double parameter, int enable_scaling);
00056   void MoveEndToParameter(double parameter, int enable_scaling);
00058  
00059   void GetFocus();
00060   void RemoveFocus();
00061 
00063 
00065   vtkSetVector3Macro(ActiveColor, double);
00066   vtkGetVector3Macro(ActiveColor, double);
00067   vtkSetVector3Macro(InactiveColor, double);
00068   vtkGetVector3Macro(InactiveColor, double);
00070 
00071   int HasFocus() {return this->Focus; }
00072 
00073   void SetAnimationCue(vtkPVAnimationCue* cue);
00074 
00076 
00077   void SetTimeMarker(double time);
00078   double GetTimeMarker();
00080 
00083   void ForceUpdate();
00084 
00086 
00088   virtual void StartInteractionCallback(int x, int y);
00089   virtual void MovePointCallback(int x, int y, int shift);
00090   virtual void EndInteractionCallback(int x, int y);
00091   virtual void ParameterCursorStartInteractionCallback(int x);
00092   virtual void ParameterCursorEndInteractionCallback();
00093   virtual void ParameterCursorMoveCallback(int x);
00095 
00097 
00098   vtkGetObjectMacro(TraceHelper, vtkPVTraceHelper);
00100 
00102   int CanRemoveFunctionPoint(int id);
00103 protected:
00104   vtkPVTimeLine();
00105   ~vtkPVTimeLine();
00106 
00107   // To override the manipulation of the start point in certain cases.
00108   virtual int FunctionPointParameterIsLocked(int id);
00109   virtual int FunctionPointCanBeMovedToParameter(int id, double parameter);
00110   //vtkKWParameterValueFunctionInterface methods.
00111   virtual unsigned long GetFunctionMTime();
00112   virtual int GetFunctionPointParameter(int id, double *parameter);
00113   virtual int GetFunctionPointDimensionality();
00114   virtual int GetFunctionPointValues(int id, double *values);
00115   virtual int SetFunctionPointValues(int id, const double *values);
00116   virtual int InterpolateFunctionPointValues(double parameter, double *values);
00117   virtual int AddFunctionPoint(double parameter, const double *values, int *id);
00118   virtual int SetFunctionPoint(int id, double parameter, const double *values);
00119   virtual int RemoveFunctionPoint(int id);
00120 
00122 
00123   virtual void InvokeSelectionChangedCommand();
00124   double ActiveColor[3];
00125   double InactiveColor[3];
00127 
00128   int OldSelection;
00129   int Focus;
00130   vtkPVAnimationCue* AnimationCue;
00131   vtkPVTraceHelper* TraceHelper;
00132 
00133 private:
00134   vtkPVTimeLine(const vtkPVTimeLine&); // Not implemented.
00135   void operator=(const vtkPVTimeLine&); // Not implemented.
00136 };
00137 
00138 
00139 #endif
00140 

Generated on Tue May 30 12:31:41 2006 for ParaView by doxygen 1.3.5