Isis 3 Developer Reference
Brick.h
Go to the documentation of this file.
1 #ifndef Brick_h
2 #define Brick_h
3 
26 #include "PixelType.h"
27 #include "BufferManager.h"
28 #include "Cube.h"
29 
30 namespace Isis {
61  class Brick : public Isis::BufferManager {
62  public:
76  Brick(const int nsamps, const int nlines, const int nbands,
77  const Isis::PixelType type, bool reverse=false) :
78  Isis::BufferManager(nsamps, nlines, nbands,
79  nsamps, nlines, nbands, type, reverse) {
80  };
81 
95  Brick(const Isis::Cube &cube, const int &bufNumSamples,
96  const int &bufNumLines, const int &bufNumBands,
97  bool reverse=false) :
98  Isis::BufferManager(cube.sampleCount(), cube.lineCount(),
99  cube.bandCount(), bufNumSamples, bufNumLines,
100  bufNumBands, cube.pixelType(), reverse) {
101  };
102 
120  Brick(int maxSamples, int maxLines, int maxBands, int bufNumSamples,
121  int bufNumLines, int bufNumBands, Isis::PixelType type,
122  bool reverse=false) :
123  Isis::BufferManager(maxSamples, maxLines, maxBands, bufNumSamples,
124  bufNumLines, bufNumBands, type, reverse) {
125  };
126 
127  public:
136  void SetBasePosition(const int start_sample, const int start_line,
137  const int start_band) {
138  this->Isis::Buffer::SetBasePosition(start_sample, start_line, start_band);
139  };
140 
146  inline void SetBaseSample(const int start_samp) {
147  this->Isis::Buffer::SetBaseSample(start_samp);
148  };
149 
155  inline void SetBaseLine(const int start_line) {
156  this->Isis::Buffer::SetBaseLine(start_line);
157  };
158 
164  inline void SetBaseBand(const int start_band) {
165  this->Isis::Buffer::SetBaseBand(start_band);
166  };
167 
168  void Resize(const int nsamps, const int nlines, const int nbands);
169 
177  bool SetBrick(const int brick);
178 
184  inline int Bricks() {
185  return MaxMaps();
186  };
187  };
188 };
189 
190 #endif
BigInt MaxMaps() const
Returns the maximum number of positions the shape buffer needs to cover the entire image (see setpos ...
Definition: BufferManager.h:178
void SetBaseLine(const int start_line)
This method is used to set the base line position of the shape buffer.
Definition: Brick.h:155
void SetBaseSample(const int start_samp)
This method is used to set the base sample position of the shape buffer.
Definition: Brick.h:146
void SetBaseBand(const int start_band)
This method is used to set the base band position of the shape buffer.
Definition: Buffer.h:209
Buffer for containing a three dimensional section of an image.
Definition: Brick.h:61
void SetBasePosition(const int start_sample, const int start_line, const int start_band)
This method is used to set the base position of the shape buffer.
Definition: Buffer.cpp:122
void SetBasePosition(const int start_sample, const int start_line, const int start_band)
This method is used to set the base position of the shape buffer.
Definition: Brick.h:136
Brick(int maxSamples, int maxLines, int maxBands, int bufNumSamples, int bufNumLines, int bufNumBands, Isis::PixelType type, bool reverse=false)
Constructs a Brick object of the specified buffer size and area size to map.
Definition: Brick.h:120
PixelType
Enumerations for Isis Pixel Types.
Definition: PixelType.h:43
void SetBaseBand(const int start_band)
This method is used to set the base band position of the shape buffer.
Definition: Brick.h:164
Manages a Buffer over a cube.
Definition: BufferManager.h:68
int Bricks()
Returns the number of Bricks in the cube.
Definition: Brick.h:184
bool SetBrick(const int brick)
This method is used to set the position of the brick.
Definition: Brick.cpp:59
void SetBaseSample(const int start_samp)
This method is used to set the base sample position of the shape buffer.
Definition: Buffer.h:189
Brick(const int nsamps, const int nlines, const int nbands, const Isis::PixelType type, bool reverse=false)
Constructs a Brick object.
Definition: Brick.h:76
void SetBaseLine(const int start_line)
This method is used to set the base line position of the shape buffer.
Definition: Buffer.h:199
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
Brick(const Isis::Cube &cube, const int &bufNumSamples, const int &bufNumLines, const int &bufNumBands, bool reverse=false)
Constructs a Brick object.
Definition: Brick.h:95
void Resize(const int nsamps, const int nlines, const int nbands)
Resizes the memory buffer to the specified number of samples, lines, and bands.
Definition: Brick.cpp:36
IO Handler for Isis Cubes.
Definition: Cube.h:170