MeVisLabToolboxReference
MeVisLab/Standard/Sources/ML/MLVesselGraph/mlTestVesselGraph.h
Go to the documentation of this file.
00001 // **InsertLicense** code
00002 //----------------------------------------------------------------------------------
00004 
00011 //----------------------------------------------------------------------------------
00012 
00013 
00014 #ifndef __mlTestVesselGraph_H
00015 #define __mlTestVesselGraph_H
00016 
00017 
00018 // Local includes
00019 #include "mlVesselGraphSystem.h"
00020 
00021 // ML includes
00022 #include <mlModuleIncludes.h>
00023 
00024 
00025 
00026 ML_START_NAMESPACE
00027 
00028 // forward declarations
00029 class Graph;
00030 class VesselNode;
00031 
00033 class VESSELGRAPH_EXPORT TestVesselGraph : public Module
00034 {
00035 public:
00036 
00038   TestVesselGraph ();
00039 
00041   virtual void handleNotification (Field *field);
00042 
00043 private:
00044 
00045   // ----------------------------------------------------------
00047 
00048   // ----------------------------------------------------------
00049 
00051   NotifyField *_runTestFld;
00053   StringField *_statusFld;
00055   BaseField *_outBase0Fld;
00056   BaseField *_outBase1Fld;
00057   BaseField *_outBase2Fld;
00059 
00060   void runTest();
00061 
00062   void appendSubTree(Graph* graph, VesselNode* parent, size_t maxDepth, unsigned int maxWidth);
00063   Vector3 randomPosition(float range = 3);
00064 
00066   ML_BASEOP_CLASS_HEADER(TestVesselGraph)
00067 };
00068 
00069 
00070 ML_END_NAMESPACE
00071 
00072 #endif // __mlTestVesselGraph_H