Isis 3.0
Home
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 {
60  class Brick : public Isis::BufferManager {
61  public:
70  Brick(const int nsamps, const int nlines, const int nbands,
71  const Isis::PixelType type, bool reverse=false) :
72  Isis::BufferManager(nsamps, nlines, nbands,
73  nsamps, nlines, nbands, type, reverse) {
74  };
75 
76  Brick(const Isis::Cube &cube, const int &bufNumSamples,
77  const int &bufNumLines, const int &bufNumBands,
78  bool reverse=false) :
79  Isis::BufferManager(cube.sampleCount(), cube.lineCount(),
80  cube.bandCount(), bufNumSamples, bufNumLines,
81  bufNumBands, cube.pixelType(), reverse) {
82  };
83 
96  Brick(int maxSamples, int maxLines, int maxBands, int bufNumSamples,
97  int bufNumLines, int bufNumBands, Isis::PixelType type,
98  bool reverse=false) :
99  Isis::BufferManager(maxSamples, maxLines, maxBands, bufNumSamples,
100  bufNumLines, bufNumBands, type, reverse) {
101  };
102 
103  public:
112  void SetBasePosition(const int start_sample, const int start_line,
113  const int start_band) {
114  this->Isis::Buffer::SetBasePosition(start_sample, start_line, start_band);
115  };
116 
122  inline void SetBaseSample(const int start_samp) {
123  this->Isis::Buffer::SetBaseSample(start_samp);
124  };
125 
131  inline void SetBaseLine(const int start_line) {
132  this->Isis::Buffer::SetBaseLine(start_line);
133  };
134 
140  inline void SetBaseBand(const int start_band) {
141  this->Isis::Buffer::SetBaseBand(start_band);
142  };
143 
144  void Resize(const int nsamps, const int nlines, const int nbands);
145 
153  bool SetBrick(const int brick);
154 
160  inline int Bricks() {
161  return MaxMaps();
162  };
163  };
164 };
165 
166 #endif
void SetBaseLine(const int start_line)
This method is used to set the base line position of the shape buffer.
Definition: Brick.h:131
void SetBaseSample(const int start_samp)
This method is used to set the base sample position of the shape buffer.
Definition: Brick.h:122
void SetBaseBand(const int start_band)
This method is used to set the base band position of the shape buffer.
Definition: Buffer.h:208
Buffer for containing a three dimensional section of an image.
Definition: Brick.h:60
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:112
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:96
PixelType
Enumerations for Isis Pixel Types.
Definition: PixelType.h:43
BigInt MaxMaps() const
Returns the maximum number of positions the shape buffer needs to cover the entire image (see setpos ...
Definition: BufferManager.h:169
void SetBaseBand(const int start_band)
This method is used to set the base band position of the shape buffer.
Definition: Brick.h:140
Manages a Buffer over a cube.
Definition: BufferManager.h:67
int Bricks()
Returns the number of Bricks in the cube.
Definition: Brick.h:160
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:188
Brick(const int nsamps, const int nlines, const int nbands, const Isis::PixelType type, bool reverse=false)
Constructs a Brick object.
Definition: Brick.h:70
void SetBaseLine(const int start_line)
This method is used to set the base line position of the shape buffer.
Definition: Buffer.h:198
Brick(const Isis::Cube &cube, const int &bufNumSamples, const int &bufNumLines, const int &bufNumBands, bool reverse=false)
Definition: Brick.h:76
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:158