00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00036 #ifndef __vtkKWStateMachineDOTWriter_h
00037 #define __vtkKWStateMachineDOTWriter_h
00038
00039 #include "vtkKWStateMachineWriter.h"
00040
00041 class KWWidgets_EXPORT vtkKWStateMachineDOTWriter : public vtkKWStateMachineWriter
00042 {
00043
00044 public:
00045 static vtkKWStateMachineDOTWriter* New();
00046 vtkTypeRevisionMacro(vtkKWStateMachineDOTWriter, vtkKWStateMachineWriter);
00047 void PrintSelf(ostream& os, vtkIndent indent);
00048
00050
00052 virtual int WriteToStream(ostream& os);
00053 virtual int WriteToFile(const char *filename);
00055
00057
00059 vtkGetStringMacro(StateFontName);
00060 vtkSetStringMacro(StateFontName);
00062
00064
00065 vtkSetClampMacro(StateFontSize, int, 2, 200);
00066 vtkGetMacro(StateFontSize, int);
00068
00070
00071 vtkSetVector3Macro(StateFontColor,double);
00072 vtkGetVector3Macro(StateFontColor,double);
00074
00076
00078 vtkGetStringMacro(InputFontName);
00079 vtkSetStringMacro(InputFontName);
00081
00083
00084 vtkSetClampMacro(InputFontSize, int, 2, 200);
00085 vtkGetMacro(InputFontSize, int);
00087
00089
00090 vtkSetVector3Macro(InputFontColor,double);
00091 vtkGetVector3Macro(InputFontColor,double);
00093
00095
00096 vtkGetStringMacro(GraphLabel);
00097 vtkSetStringMacro(GraphLabel);
00099
00101
00104 vtkGetStringMacro(GraphFontName);
00105 vtkSetStringMacro(GraphFontName);
00107
00109
00111 vtkSetClampMacro(GraphFontSize, int, 2, 200);
00112 vtkGetMacro(GraphFontSize, int);
00114
00116
00118 vtkSetVector3Macro(GraphFontColor,double);
00119 vtkGetVector3Macro(GraphFontColor,double);
00121
00123
00124 enum
00125 {
00126 GraphDirectionTopToBottom,
00127 GraphDirectionLeftToRight
00128 };
00129
00130 vtkSetClampMacro(GraphDirection, int, GraphDirectionTopToBottom, GraphDirectionLeftToRight);
00131 vtkGetMacro(GraphDirection, int);
00132 virtual void SetGraphDirectionToTopToBottom();
00133 virtual void SetGraphDirectionToLeftToRight();
00135
00137
00143 vtkBooleanMacro(PutStatesAtSameRank, int);
00144 vtkGetMacro(PutStatesAtSameRank, int);
00145 vtkSetMacro(PutStatesAtSameRank, int);
00147
00149
00151 vtkBooleanMacro(CommandVisibility, int);
00152 vtkGetMacro(CommandVisibility, int);
00153 vtkSetMacro(CommandVisibility, int);
00155
00157
00159 vtkGetStringMacro(ClusterFontName);
00160 vtkSetStringMacro(ClusterFontName);
00162
00164
00165 vtkSetClampMacro(ClusterFontSize, int, 2, 200);
00166 vtkGetMacro(ClusterFontSize, int);
00168
00170
00171 vtkSetVector3Macro(ClusterFontColor,double);
00172 vtkGetVector3Macro(ClusterFontColor,double);
00174
00175
00176
00177 protected:
00178 vtkKWStateMachineDOTWriter();
00179 ~vtkKWStateMachineDOTWriter();
00180
00181 char *GraphLabel;
00182 char *GraphFontName;
00183 int GraphFontSize;
00184 double GraphFontColor[3];
00185 int GraphDirection;
00186
00187 char *StateFontName;
00188 int StateFontSize;
00189 double StateFontColor[3];
00190
00191 char *InputFontName;
00192 int InputFontSize;
00193 double InputFontColor[3];
00194
00195 char *ClusterFontName;
00196 int ClusterFontSize;
00197 double ClusterFontColor[3];
00198
00199 int PutStatesAtSameRank;
00200 int CommandVisibility;
00201
00202
00203
00204 private:
00205
00206 vtkKWStateMachineDOTWriter(const vtkKWStateMachineDOTWriter&);
00207 void operator=(const vtkKWStateMachineDOTWriter&);
00208 };
00209
00210 #endif
00211