3D Human Airway Tree
Program generuje ludzkie drzewo oskrzelowe
CompueTree.h
Idź do dokumentacji tego pliku.
1 /*=========================================================================
2 
3  Program: 3D Human Airway Tree
4  Module: CompueTree.h
5 
6  Copyright (c) Kacper Pluta <kacperp@wsinf.edu.pl>
7  All rights reserved.
8  See Copyright.txt or http://leo.wsinf.edu.pl/~kacperp/3dtree for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
16 #ifndef COMPUETREE_H
17 #define COMPUETREE_H
18 
19 #include <QtCore/QThread>
20 
21 #include "SimpleOrganShape.h"
22 #include <boost/shared_ptr.hpp>
23 #include <list>
24 #include "SimpleOrganShape.h"
25 #include "Branch.h"
26 #include "TreeBranchProducer.h"
27 #include "TreeBranchVoxelizer.h"
28 
29 
30 class ComputeThread : public QThread
31 {
32 Q_OBJECT
33 
34 public:
35  ComputeThread();
36  virtual ~ComputeThread();
37  void upDateSpacing(float p_spacing){spacing = p_spacing;}
38  void upDateDeep(int p_deep){deep = p_deep;}
39 protected:
40  virtual void run();
41 private:
42  SimpleOrganShape *Shape;
43  boost::shared_ptr<Branch> root;
44  std::list<boost::shared_ptr<Branch> > BranchList;
45  TreeBranchProducer *produceBranch;
46  TreeBranchVoxelizer *Voxelizer;
47  float spacing;
48  int deep;
49 signals:
50  vtkImageData *endCompute(vtkImageData *, QThread *);
51 };
52 
53 #endif // COMPUETREE_H