USGS

Isis 3.0 Object Programmers' Reference

Home

ProcessBySample.h
Go to the documentation of this file.
1 #ifndef ProcessBySample_h
2 #define ProcessBySample_h
3 
25 #include "ProcessByBrick.h"
26 #include "Buffer.h"
27 
28 namespace Isis {
53 
54  public:
56  SetWrap(true);
57  };
58 
59  Isis::Cube *SetInputCube(const QString &parameter,
60  int requirements = 0);
61  Isis::Cube *SetInputCube(const QString &file,
63  int requirements = 0);
64 
65  void StartProcess(void funct(Isis::Buffer &inout));
66 
67  void StartProcess(void funct(Isis::Buffer &in, Isis::Buffer &out));
68 
69  void StartProcess(void funct(std::vector<Isis::Buffer *> &in,
70  std::vector<Isis::Buffer *> &out));
71 
77  template <typename Functor>
78  void ProcessCubeInPlace(const Functor & funct, bool threaded = true) {
80  ProcessByBrick::ProcessCubeInPlace(funct, threaded);
81  }
82 
88  template <typename Functor>
89  void ProcessCube(const Functor & funct, bool threaded = true) {
91  ProcessByBrick::ProcessCube(funct, threaded);
92  }
93 
99  template <typename Functor>
100  void ProcessCubes(const Functor & funct, bool threaded = true) {
102  ProcessByBrick::ProcessCubes(funct, threaded);
103  }
104 
105 
106  private:
110  };
111 };
112 
113 #endif