SiGraph: sulcal graphs


interfoldedge.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2005 CEA
3 *
4 * This software and supporting documentation were developed by
5 * CEA/DSV/SHFJ
6 * 4 place du General Leclerc
7 * 91401 Orsay cedex
8 * France
9 *
10 */
11
12#ifndef SI_FOLD_INTERFOLDEDGE_H
13#define SI_FOLD_INTERFOLDEDGE_H
14
15
16#include <graph/graph/uedge.h>
17
18namespace sigraph
19{
20
21 class CorticalEdge : public UEdge
22 {
23 public:
24 virtual ~CorticalEdge();
25
26 static GenericObject* makeCortical( const std::string & );
27
28 // public properties for fast access
29 float size;
30 float refsize;
32 float dist;
34 float refdist;
36 std::vector<int> SS1nearest;
38 std::vector<float> refSS1nearest;
40 std::vector<int> SS2nearest;
42 std::vector<float> refSS2nearest;
44 float length;
46 float reflength;
48
49 protected:
50 CorticalEdge( const std::string & s );
52 virtual Edge * cloneEdge() const;
54 };
55
56
57 class JunctionEdge : public UEdge
58 {
59 public:
60 virtual ~JunctionEdge();
61
62 static GenericObject* makeJunction( const std::string & );
63
64 // public properties for fast access
65 float size;
66 float refsize;
68 float mindepth;
72 float maxdepth;
76 float length;
78 float reflength;
80
81 protected:
82 JunctionEdge( const std::string & s );
84 virtual Edge * cloneEdge() const;
86 };
87
88
89 class HullJunctionEdge : public UEdge
90 {
91 public:
93
94 static GenericObject* makeHullJunction( const std::string & );
95
96 // public properties for fast access
97 float size;
98 float refsize;
100 std::vector<float> direction;
102 std::vector<float> refdirection;
104 std::vector<int> extremity1;
106 std::vector<int> extremity2;
108 std::vector<float> refextremity1;
110 std::vector<float> refextremity2;
112 float length;
116
117 protected:
118 HullJunctionEdge( const std::string & s );
120 virtual Edge * cloneEdge() const;
122 };
123
124
125 class PliDePassageEdge : public UEdge
126 {
127 public:
129
130 static GenericObject* makePliDePassage( const std::string & );
131
132 // public properties for fast access
133 float size;
134 float refsize;
136 float depth;
138 float refdepth;
140
141 protected:
142 PliDePassageEdge( const std::string & s );
144 virtual Edge * cloneEdge() const;
146 };
147
148}
149
150#endif
151
Edge(std::string s)
UEdge(std::string s)
std::vector< float > refSS1nearest
CorticalEdge(const CorticalEdge &s)
virtual Edge * cloneEdge() const
static GenericObject * makeCortical(const std::string &)
std::vector< int > SS1nearest
std::vector< int > SS2nearest
CorticalEdge(const std::string &s)
std::vector< float > refSS2nearest
std::vector< float > refextremity2
HullJunctionEdge(const std::string &s)
std::vector< float > refdirection
std::vector< float > direction
std::vector< int > extremity2
HullJunctionEdge(const HullJunctionEdge &s)
std::vector< float > refextremity1
virtual Edge * cloneEdge() const
std::vector< int > extremity1
static GenericObject * makeHullJunction(const std::string &)
virtual Edge * cloneEdge() const
JunctionEdge(const JunctionEdge &s)
static GenericObject * makeJunction(const std::string &)
JunctionEdge(const std::string &s)
PliDePassageEdge(const std::string &s)
virtual Edge * cloneEdge() const
static GenericObject * makePliDePassage(const std::string &)
PliDePassageEdge(const PliDePassageEdge &s)