Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

mitkPathNetwork.h

00001 /*=========================================================================
00002 
00003   Program:   3DMed
00004   Date:      $Date: 2014-02-25 18:30:00 +0800 $
00005   Version:   $Version: 4.6.0 $
00006   Copyright: MIPG, Institute of Automation, Chinese Academy of Sciences
00007 
00008 =========================================================================*/
00009 
00010 #ifndef _mitkPathNetwork_h
00011 #define _mitkPathNetwork_h
00012 
00013 #include "mitkRCPtr.h"
00014 #include "mitkPath.h"
00015 
00016 struct MITK_COMMON_API PathNode
00017 {
00018     PathNode();
00019     PathNode(const PathNode& pn);
00020     ~PathNode();
00021 
00022     mitkRCPtr<mitkPath> path;
00023     int startHinge, termHinge;
00024 };
00025 
00026 struct MITK_COMMON_API HingeNode
00027 {
00028     HingeNode(int numOfPaths);
00029     HingeNode(const HingeNode& hn);
00030 
00031     ~HingeNode();
00032 
00033     int numOfPaths;
00034     int* Paths;
00035 };
00036 
00037 class PathList;
00038 class HingeList;
00039 
00040 class MITK_COMMON_API mitkPathNetwork : public mitkObject
00041 {
00042 public:
00043     MITK_TYPE(mitkPathNetwork, mitkObject)
00044     mitkPathNetwork();
00045 
00046     void DeepCopy(const mitkPathNetwork& source);
00047 
00048     int AddPath(const PathNode& path);
00049     int AddHinge(const HingeNode& hinge);
00050 
00051     int GetPathNum() const;
00052     PathNode& GetPath(int index);
00053 
00054     int GetHingeNum() const;
00055     HingeNode& GetHinge(int index);
00056 
00057 protected:
00058     virtual ~mitkPathNetwork();
00059 
00060 private:
00061     mitkPathNetwork(const mitkPathNetwork&);
00062     void operator = (const mitkPathNetwork&);
00063 
00064     PathList* m_PathList;
00065     HingeList* m_HingeList;
00066 
00067 };
00068 
00069 #endif 

Generated on Tue Feb 25 15:00:37 2014 for MITK (Medical Imaging ToolKit) by  doxygen 1.4.3