Isis 3.0 Object Programmers' Reference
Home
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ProcessByLine.h
Go to the documentation of this file.
1
#ifndef ProcessByLine_h
2
#define ProcessByLine_h
3
25
#include "
ProcessByBrick.h
"
26
#include "
Buffer.h
"
27
namespace
Isis {
28
class
Cube;
29
class
CubeAttributeInput;
30
96
class
ProcessByLine
:
public
Isis::ProcessByBrick
{
97
98
public
:
99
ProcessByLine
():
ProcessByBrick
() {
100
SetWrap
(
true
);
101
};
102
103
Isis::Cube
*
SetInputCube
(
const
QString ¶meter,
104
const
int
requirements = 0);
105
Isis::Cube
*
SetInputCube
(
const
QString &file,
106
Isis::CubeAttributeInput
&att,
107
const
int
requirements = 0);
108
void
SetInputCube
(
Isis::Cube
*inCube);
109
110
void
StartProcess
(
void
funct(
Isis::Buffer
&inout));
111
112
void
StartProcess
(
void
funct(
Isis::Buffer
&in,
Isis::Buffer
&out));
113
114
void
StartProcess
(
void
115
funct(std::vector<Isis::Buffer *> &in,
116
std::vector<Isis::Buffer *> &out));
117
120
void
VerifyCubeInPlace
(
void
);
121
132
template
<
typename
Functor>
133
void
ProcessCubeInPlace
(
const
Functor & funct,
bool
threaded =
true
) {
134
VerifyCubeInPlace
();
135
ProcessByBrick::ProcessCubeInPlace
(funct, threaded);
136
}
137
142
void
VerifyCubeIO
(
void
);
143
156
template
<
typename
Functor>
157
void
ProcessCube
(
const
Functor & funct,
bool
threaded =
true
) {
158
VerifyCubeIO
();
159
ProcessByBrick::ProcessCube
(funct, threaded);
160
}
161
168
void
VerifyCubeIOList
(
void
);
169
183
template
<
typename
Functor>
184
void
ProcessCubes
(
const
Functor & funct,
bool
threaded =
true
) {
185
VerifyCubeIOList
();
186
ProcessByBrick::ProcessCubes
(funct, threaded);
187
}
188
};
189
};
190
191
#endif