File: MetricsToRgbPaintConverter.h

package info (click to toggle)
caret 5.6.4~dfsg.1-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 31,904 kB
  • ctags: 28,901
  • sloc: cpp: 378,050; python: 6,718; ansic: 5,507; makefile: 333; sh: 46
file content (137 lines) | stat: -rw-r--r-- 3,899 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
/*LICENSE_START*/
/*
 *  Copyright 1995-2002 Washington University School of Medicine
 *
 *  http://brainmap.wustl.edu
 *
 *  This file is part of CARET.
 *
 *  CARET is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  CARET is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with CARET; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 */
/*LICENSE_END*/



#ifndef __VE_METRICS_TO_RGB_PAINT_CONVERTER_H__
#define __VE_METRICS_TO_RGB_PAINT_CONVERTER_H__

#include <QString>

class MetricFile;
class RgbPaintFile;

/// Class that converts metrics to RGB Paint
class MetricsToRgbPaintConverter {
   public:
      /// Constructor
      MetricsToRgbPaintConverter();
      
      /// Destructor
      ~MetricsToRgbPaintConverter();
      
      /// set rgb paint file info
      void setRgbPaintInfo(const int column, const QString& columnName,
                           const QString& title);
      
      /// set red metric info
      void setRedMetric(const int column, const float negMax, const float posMax);

      /// set green metric info
      void setGreenMetric(const int column, const float negMax, const float posMax);

      /// set blue metric info
      void setBlueMetric(const int column, const float negMax, const float posMax);

      /// set red threshold info
      void setRedThresh(const int column, const float negMax, const float posMax);

      /// set green threshold info
      void setGreenThresh(const int column, const float negMax, const float posMax);

      /// set blue threshold info
      void setBlueThresh(const int column, const float negMax, const float posMax);

      /// convert metric to rgb paint (returns true if an error occurs)
      bool convert(const MetricFile* mf, RgbPaintFile* rgbPaintFile, QString& errorMessage);
      
   private:
      /// rgb paint column
      int rgbPaintColumn;
      
      /// rgb paint column name
      QString rgbPaintColumnName;
      
      /// rgb paint title
      QString rgbTitle;
      
      /// red metric column
      int redMetricColumn;
      
      /// green metric column
      int greenMetricColumn;
      
      /// blue metric column
      int blueMetricColumn;
      
      /// red metric negative max
      float redMetricNegMax;
            
      /// red metric positive max
      float redMetricPosMax;
            
      /// green metric negative max
      float greenMetricNegMax;
            
      /// green metric positive max
      float greenMetricPosMax;
            
      /// blue metric negative max
      float blueMetricNegMax;
            
      /// blue metric positive max
      float blueMetricPosMax;
            
      /// red threshold column
      int redThresholdColumn;
      
      /// green threshold column
      int greenThresholdColumn;
      
      /// blue threshold column
      int blueThresholdColumn;
      
      /// red threshold negative 
      float redThresholdNeg;
            
      /// red threshold positive 
      float redThresholdPos;
            
      /// green threshold negative 
      float greenThresholdNeg;
            
      /// green threshold positive 
      float greenThresholdPos;
            
      /// blue threshold negative 
      float blueThresholdNeg;
            
      /// blue threshold positive 
      float blueThresholdPos;
            
};

#endif  // __VE_METRICS_TO_RGB_PAINT_CONVERTER_H__