Isis 3 Programmer Reference
ProcessByBoxcar.h
1 #ifndef ProcessByBoxcar_h
2 #define ProcessByBoxcar_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 #include "Process.h"
10 #include "Buffer.h"
11 
12 namespace Isis {
39  class ProcessByBoxcar : public Isis::Process {
40 
41  private:
42  bool p_boxsizeSet;
44  int p_boxLines;
45 
46 
47  public:
48 
51  p_boxsizeSet = false;
52  };
53 
55  virtual ~ProcessByBoxcar() {};
56 
57  void SetBoxcarSize(const int ns, const int nl);
58 
59  using Isis::Process::StartProcess; // make parent functions visable
60  virtual void StartProcess(void funct(Isis::Buffer &in, double &out));
61  void ProcessCube(void funct(Isis::Buffer &in, double &out)) {
62  StartProcess(funct);
63  }
64 
65  void EndProcess();
66  void Finalize();
67  };
68 };
69 
70 #endif
Isis::ProcessByBoxcar::StartProcess
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,...
Definition: ProcessByBoxcar.cpp:42
Isis::ProcessByBoxcar::Finalize
void Finalize()
End the boxcar processing sequence and cleans up by closing cubes, freeing memory,...
Definition: ProcessByBoxcar.cpp:123
Isis::Process
Base class for all cube processing derivatives.
Definition: Process.h:143
Isis::ProcessByBoxcar::ProcessByBoxcar
ProcessByBoxcar()
Constructs a ProcessByBoxcar object.
Definition: ProcessByBoxcar.h:50
Isis::ProcessByBoxcar
Process cubes by boxcar.
Definition: ProcessByBoxcar.h:39
Isis::Process::StartProcess
virtual void StartProcess(void funct())
In the base class, this method will invoked a user-specified function exactly one time.
Definition: Process.h:213
Isis::Buffer
Buffer for reading and writing cube data.
Definition: Buffer.h:53
Isis::ProcessByBoxcar::p_boxSamples
int p_boxSamples
Number of samples in boxcar.
Definition: ProcessByBoxcar.h:43
Isis::ProcessByBoxcar::p_boxLines
int p_boxLines
Number of lines in boxcar.
Definition: ProcessByBoxcar.h:44
Isis::ProcessByBoxcar::SetBoxcarSize
void SetBoxcarSize(const int ns, const int nl)
Sets the boxcar size.
Definition: ProcessByBoxcar.cpp:24
Isis::ProcessByBoxcar::~ProcessByBoxcar
virtual ~ProcessByBoxcar()
Destroys the ProcessByBoxcar object.
Definition: ProcessByBoxcar.h:55
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::ProcessByBoxcar::EndProcess
void EndProcess()
End the boxcar processing sequence and cleans up by closing cubes, freeing memory,...
Definition: ProcessByBoxcar.cpp:112
Isis::ProcessByBoxcar::p_boxsizeSet
bool p_boxsizeSet
Indicates whether the boxcar size has been set.
Definition: ProcessByBoxcar.h:42