Isis 3 Programmer Reference
ProcessByBoxcar.h
Go to the documentation of this file.
1 #ifndef ProcessByBoxcar_h
2 #define ProcessByBoxcar_h
3 
25 #include "Process.h"
26 #include "Buffer.h"
27 
28 namespace Isis {
55  class ProcessByBoxcar : public Isis::Process {
56 
57  private:
58  bool p_boxsizeSet;
60  int p_boxLines;
61 
62 
63  public:
64 
67  p_boxsizeSet = false;
68  };
69 
71  virtual ~ProcessByBoxcar() {};
72 
73  void SetBoxcarSize(const int ns, const int nl);
74 
75  using Isis::Process::StartProcess; // make parent functions visable
76  virtual void StartProcess(void funct(Isis::Buffer &in, double &out));
77  void ProcessCube(void funct(Isis::Buffer &in, double &out)) {
78  StartProcess(funct);
79  }
80 
81  void EndProcess();
82  void Finalize();
83  };
84 };
85 
86 #endif
Buffer for reading and writing cube data.
Definition: Buffer.h:69
int p_boxSamples
Number of samples in boxcar.
bool p_boxsizeSet
Indicates whether the boxcar size has been set.
void SetBoxcarSize(const int ns, const int nl)
Sets the boxcar size.
ProcessByBoxcar()
Constructs a ProcessByBoxcar object.
Process cubes by boxcar.
virtual ~ProcessByBoxcar()
Destroys the ProcessByBoxcar object.
virtual void StartProcess(void funct())
In the base class, this method will invoked a user-specified function exactly one time...
Definition: Process.h:228
virtual void StartProcess(void funct(Isis::Buffer &in, double &out))
Starts the systematic processing of the input cube by moving a boxcar, p_boxSamples by p_boxLines...
void Finalize()
End the boxcar processing sequence and cleans up by closing cubes, freeing memory, etc.
void EndProcess()
End the boxcar processing sequence and cleans up by closing cubes, freeing memory, etc.
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
int p_boxLines
Number of lines in boxcar.
Base class for all cube processing derivatives.
Definition: Process.h:158