OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
ATP::ossimAtpTool Class Reference

#include <ossimAtpTool.h>

Inheritance diagram for ATP::ossimAtpTool:
ossimTool ossimObject ossim::JsonInterface ossimReferenced

Public Types

enum  Method { METHOD_UNASSIGNED =0, GET_ALGO_LIST, GET_PARAMS, GENERATE }
 

Public Member Functions

 ossimAtpTool ()
 
virtual ~ossimAtpTool ()
 
virtual void setUsage (ossimArgumentParser &ap)
 Initializes the aurgument parser with expected parameters and options. More...
 
virtual bool initialize (ossimArgumentParser &ap)
 Initializes from command line arguments. More...
 
virtual bool execute ()
 Writes product to output file if applicable. More...
 
virtual ossimString getClassName () const
 
virtual void getKwlTemplate (ossimKeywordlist &kwl)
 Assigns a template keywordlist to string for initializing derived classes. More...
 
virtual void loadJSON (const Json::Value &json)
 Reads processing params from JSON object provided. More...
 
virtual void saveJSON (Json::Value &json) const
 Fetch product as JSON object when applicable Always returns true since using exception on error. More...
 
- Public Member Functions inherited from ossimTool
 ossimTool ()
 
virtual ~ossimTool ()
 
virtual void initialize (const ossimKeywordlist &kwl)
 Reads processing params from KWL and prepares for execute. More...
 
virtual const std::string & getResponse () const
 Fetch product as string (typically JSON) when applicable, otherwise passes back empty string. More...
 
virtual void clear ()
 Disconnects and clears the DEM and image layers. More...
 
virtual void abort ()
 Kills current (asynchronous) process. More...
 
void getAPI (std::string &out) const
 Outputs a JSON representation of the Utility's API. More...
 
std::string getAPI () const
 
void getBuildDate (std::string &s) const
 Gets build date. More...
 
void getRevision (std::string &s) const
 Gets revision. More...
 
void getVersion (std::string &s) const
 Gets version. More...
 
virtual bool isChipProcessor () const
 Overrides base class implementation to indicate this class supports getChip() calls. More...
 
void setOutputStream (std::ostream *os)
 Redirects any console output to the supplied stream for logging or JNI application. More...
 
bool helpRequested () const
 Returns true when the initialization detects a "--help" option, so caller can avoid subsequent execute() call. More...
 
- Public Member Functions inherited from ossimObject
 ossimObject ()
 
virtual ~ossimObject ()
 
virtual ossimObjectdup () const
 
virtual ossimString getShortName () const
 
virtual ossimString getLongName () const
 
virtual ossimString getDescription () const
 
virtual RTTItypeid getType () const
 
virtual bool canCastTo (ossimObject *obj) const
 
virtual bool canCastTo (const RTTItypeid &id) const
 
virtual bool canCastTo (const ossimString &parentClassName) const
 
virtual bool saveState (ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual bool loadState (const ossimKeywordlist &kwl, const char *prefix=0)
 
virtual std::ostream & print (std::ostream &out) const
 Generic print method. More...
 
virtual bool isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const
 
virtual void accept (ossimVisitor &visitor)
 
- Public Member Functions inherited from ossimReferenced
 ossimReferenced ()
 
 ossimReferenced (const ossimReferenced &)
 
ossimReferencedoperator= (const ossimReferenced &)
 
void ref () const
 increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
 
void unref () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
void unref_nodelete () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
int referenceCount () const
 
- Public Member Functions inherited from ossim::JsonInterface
 JsonInterface ()
 
virtual ~JsonInterface ()
 

Static Public Attributes

static const char * DESCRIPTION
 

Private Member Functions

void getAlgorithms ()
 
void getParameters ()
 
void generate ()
 
void doPairwiseMatching ()
 When the ATP generator works with image pairs (crosscorr and descriptor), This method is used to loop over all image pairs and assemble the final tiepoint list for all. More...
 

Private Attributes

std::ostream * m_outputStream
 
bool m_verbose
 
bool m_featureBased
 
unsigned int m_algorithm
 
Method m_method
 
std::string m_configuration
 
Json::Value m_responseJSON
 
std::shared_ptr< ossim::PhotoBlockm_photoBlock
 

Additional Inherited Members

- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 
- Protected Attributes inherited from ossimTool
ossimKeywordlist m_kwl
 
std::ostream * m_consoleStream
 
bool m_helpRequested
 
std::string m_response
 

Detailed Description

Definition at line 20 of file ossimAtpTool.h.

Member Enumeration Documentation

◆ Method

Constructor & Destructor Documentation

◆ ossimAtpTool()

ATP::ossimAtpTool::ossimAtpTool ( )

Definition at line 25 of file ossimAtpTool.cpp.

26 : m_outputStream (0),
27  m_verbose (false),
28  m_featureBased (true),
29  m_algorithm (0),
31 {
32 }
std::ostream * m_outputStream
Definition: ossimAtpTool.h:55
unsigned int m_algorithm
Definition: ossimAtpTool.h:58

◆ ~ossimAtpTool()

ATP::ossimAtpTool::~ossimAtpTool ( )
virtual

Definition at line 34 of file ossimAtpTool.cpp.

35 {
36 }

Member Function Documentation

◆ doPairwiseMatching()

void ATP::ossimAtpTool::doPairwiseMatching ( )
private

When the ATP generator works with image pairs (crosscorr and descriptor), This method is used to loop over all image pairs and assemble the final tiepoint list for all.

Definition at line 291 of file ossimAtpTool.cpp.

References ossim::JsonParam::asBool(), CINFO, ossim::JsonConfig::getParameter(), ATP::AtpConfig::instance(), m_algorithm, m_photoBlock, and m_responseJSON.

Referenced by generate().

292 {
293  static const char* MODULE = "ossimAtpTool::doPairwiseMatching() ";
294  ostringstream xmsg;
295  xmsg<<MODULE;
296 
297  if (!m_photoBlock || (m_photoBlock->getImageList().size() < 2))
298  {
299  xmsg << "No photoblock has been declared or it has less than two images. Cannot perform ATP.";
300  throw ossimException(xmsg.str());
301  }
302 
303  shared_ptr<AtpGenerator> generator;
304 
305  // First obtain list of images from photoblock:
306  std::vector<shared_ptr<Image> >& imageList = m_photoBlock->getImageList();
307  int numImages = (int) imageList.size();
308  for (int i=0; i<(numImages-1); i++)
309  {
310  shared_ptr<Image> imageA = imageList[i];
311  for (int j=i+1; j<numImages; j++)
312  {
313  shared_ptr<Image> imageB = imageList[j];
314 
315  // Instantiate the ATP generator for this pair:
316  generator.reset(new AtpGenerator((AtpGenerator::Algorithm) m_algorithm));
317 
318  // Generate tie points using A for features:
319  generator->setRefImage(imageA);
320  generator->setCmpImage(imageB);
321  TiePointList tpList;
322  generator->generateTiePointList(tpList);
323  m_photoBlock->addTiePoints(tpList);
324 
325  if (AtpConfig::instance().diagnosticLevel(2))
326  CINFO<<"Completed pairwise match for pair "<<i<<"-"<<j<<endl;
327 
328  // Now reverse CMP and REF to find possible additional features on B:
329  bool doTwoWaySearch = AtpConfig::instance().getParameter("doTwoWaySearch").asBool();
330  if (doTwoWaySearch)
331  {
332  generator->setRefImage(imageB);
333  generator->setCmpImage(imageA);
334  tpList.clear();
335  generator->generateTiePointList(tpList);
336  m_photoBlock->addTiePoints(tpList);
337 
338  if (AtpConfig::instance().diagnosticLevel(2))
339  CINFO<<"Completed pairwise match for pair "<<j<<"-"<<i<<endl;
340  }
341  }
342  }
343 
344  // Save list to photoblock JSON:
345  Json::Value pbJson;
346  m_photoBlock->saveJSON(pbJson);
347  m_responseJSON["photoblock"] = pbJson;
348 
349  if (AtpConfig::instance().diagnosticLevel(1))
350  CINFO<<"\n"<<MODULE<<"Total TPs found = "<<m_photoBlock->getTiePointList().size()<<endl;
351 }
JsonParam & getParameter(const char *paramName)
Returns a parameter (might be a null parameter if paramName not found in the configuration.
Definition: JsonConfig.cpp:377
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
Definition: ossimIosFwd.h:35
unsigned int m_algorithm
Definition: ossimAtpTool.h:58
std::vector< std::shared_ptr< TiePoint > > TiePointList
Definition: TiePoint.h:21
bool asBool() const
Definition: JsonConfig.cpp:257
Json::Value m_responseJSON
Definition: ossimAtpTool.h:61
std::shared_ptr< ossim::PhotoBlock > m_photoBlock
Definition: ossimAtpTool.h:62
static AtpConfig & instance()
Singleton implementation.
Definition: AtpConfig.cpp:20
#define CINFO

◆ execute()

bool ATP::ossimAtpTool::execute ( )
virtual

Writes product to output file if applicable.

The product may also beAlways returns true since using exception on error.

Note
Throws ossimException on error.

Implements ossimTool.

Definition at line 192 of file ossimAtpTool.cpp.

References CFATAL, GENERATE, generate(), GET_ALGO_LIST, GET_PARAMS, getAlgorithms(), getParameters(), m_method, m_outputStream, m_responseJSON, and ossimException::what().

193 {
194  ostringstream xmsg;
195 
196  try
197  {
198  switch (m_method)
199  {
200  case GET_ALGO_LIST:
201  getAlgorithms();
202  break;
203  case GET_PARAMS:
204  getParameters();
205  break;
206  case GENERATE:
207  generate();
208  break;
209  default:
210  xmsg << "Fatal: No method selected prior to execute being called. I don't know what to do!";
211  throw ossimException(xmsg.str());
212  }
213 
214  // Serialize JSON object for return:
215  if (m_outputStream)
216  (*m_outputStream) << m_responseJSON;
217  }
218  catch(ossimException &e)
219  {
220  CFATAL<<"Exception: "<<e.what()<<endl;
221  if (m_outputStream)
222  *m_outputStream<<"{ \"ERROR\": \"" << e.what() << "\" }\n"<<endl;
223  }
224 
225  // close any open file streams:
226  ofstream* so = dynamic_cast<ofstream*>(m_outputStream);
227  if (so)
228  {
229  so->close();
230  delete so;
231  }
232 
233  return true;
234 }
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
Definition: ossimIosFwd.h:35
std::ostream * m_outputStream
Definition: ossimAtpTool.h:55
virtual const char * what() const
Returns the error message.
Json::Value m_responseJSON
Definition: ossimAtpTool.h:61
#define CFATAL
std::basic_ofstream< char > ofstream
Class for char output file streams.
Definition: ossimIosFwd.h:47

◆ generate()

void ATP::ossimAtpTool::generate ( )
private

Definition at line 269 of file ossimAtpTool.cpp.

References ATP::AtpGenerator::ALGO_UNASSIGNED, ATP::AtpGenerator::CROSSCORR, ATP::AtpGenerator::DESCRIPTOR, doPairwiseMatching(), m_algorithm, and ATP::AtpGenerator::NASA.

Referenced by execute().

270 {
271  ostringstream xmsg;
272  xmsg<<"ossimAtpTool::generate() ";
273 
274  switch (m_algorithm)
275  {
276  case (unsigned int) AtpGenerator::CROSSCORR:
277  case (unsigned int) AtpGenerator::DESCRIPTOR:
279  break;
280  case (unsigned int) AtpGenerator::NASA:
281  xmsg << "NASA Algorithm not yet implemented!";
282  throw ossimException(xmsg.str());
283  break;
284  case (unsigned int) AtpGenerator::ALGO_UNASSIGNED:
285  default:
286  xmsg << "Fatal: No algorithm selected prior to execute being called. I don't know what to do!";
287  throw ossimException(xmsg.str());
288  }
289 }
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
Definition: ossimIosFwd.h:35
unsigned int m_algorithm
Definition: ossimAtpTool.h:58
void doPairwiseMatching()
When the ATP generator works with image pairs (crosscorr and descriptor), This method is used to loop...

◆ getAlgorithms()

void ATP::ossimAtpTool::getAlgorithms ( )
private

Definition at line 240 of file ossimAtpTool.cpp.

References m_responseJSON.

Referenced by execute().

241 {
242  m_responseJSON.clear();
243 
244  Json::Value algoList;
245  algoList[0]["name"] = "crosscorr";
246  algoList[0]["description"] = "Matching by cross-correlation of raster patches";
247  algoList[0]["label"] = "Cross Correlation";
248  algoList[1]["name"] = "descriptor";
249  algoList[1]["description"] = "Matching by feature descriptors";
250  algoList[1]["label"] = "Descriptor";
251  //algoList[2]["name"] = "nasa";
252  //algoList[2]["description"] = "Tiepoint extraction using NASA tool.";
253  //algoList[2]["label"] = "NASA";
254 
255  m_responseJSON["algorithms"] = algoList;
256 }
Json::Value m_responseJSON
Definition: ossimAtpTool.h:61

◆ getClassName()

virtual ossimString ATP::ossimAtpTool::getClassName ( ) const
inlinevirtual

Reimplemented from ossimTool.

Definition at line 37 of file ossimAtpTool.h.

37 { return "ossimAtpTool"; }

◆ getKwlTemplate()

void ATP::ossimAtpTool::getKwlTemplate ( ossimKeywordlist kwl)
virtual

Assigns a template keywordlist to string for initializing derived classes.

Reimplemented from ossimTool.

Definition at line 236 of file ossimAtpTool.cpp.

237 {
238 }

◆ getParameters()

void ATP::ossimAtpTool::getParameters ( )
private

Definition at line 258 of file ossimAtpTool.cpp.

References ATP::AtpConfig::instance(), m_responseJSON, and ossim::JsonConfig::saveJSON().

Referenced by execute().

259 {
260  m_responseJSON.clear();
261 
262  Json::Value params;
263  AtpConfig::instance().saveJSON(params);
264 
265  m_responseJSON["parameters"] = params;
266 
267 }
virtual void saveJSON(Json::Value &params_json_node) const
Reads the params controlling the process from the JSON node named "parameters".
Definition: JsonConfig.cpp:447
Json::Value m_responseJSON
Definition: ossimAtpTool.h:61
static AtpConfig & instance()
Singleton implementation.
Definition: AtpConfig.cpp:20

◆ initialize()

bool ATP::ossimAtpTool::initialize ( ossimArgumentParser ap)
virtual

Initializes from command line arguments.

This base class has some common arguments to read. The derived class should call this implementation in addition to setting its own arguments.

Parameters
apRepresents command line.
Returns
FALSE if –help option requested or no params provided, so that derived classes can exit without error.
Note
Throws ossimException on error.

Reimplemented from ossimTool.

Definition at line 65 of file ossimAtpTool.cpp.

References CFATAL, GENERATE, GET_ALGO_LIST, GET_PARAMS, ossimTool::initialize(), loadJSON(), ossimTool::m_helpRequested, m_method, m_outputStream, m_verbose, and ossimArgumentParser::read().

66 {
67  string ts1;
70 
71  if (!ossimTool::initialize(ap))
72  return false;
73  if (m_helpRequested)
74  return true;
75 
76  if ( ap.read("-v"))
77  m_verbose = true;
78 
79  if ( ap.read("--algorithms"))
81 
82  if ( ap.read("--parameters"))
84 
85  if ( ap.read("-i", sp1))
86  {
87  ifstream s (ts1);
88  if (s.fail())
89  {
90  CFATAL<<__FILE__<<" Could not open input file <"<<ts1<<">";
91  return false;
92  }
93  try
94  {
95  Json::Value queryJson;
96  s >> queryJson;
97  loadJSON(queryJson);
98  }
99  catch (exception& e)
100  {
101  CFATAL<<__FILE__<<" Could not parse input JSON <"<<ts1<<">";
102  return false;
103  }
104  }
105 
106  if ( ap.read("-o", sp1))
107  {
108  ofstream* s = new ofstream (ts1);
109  if (s->fail())
110  {
111  CFATAL<<__FILE__<<" Could not open output file <"<<ts1<<">";
112  return false;
113  }
114  m_outputStream = s;
115  }
116  else
117  m_outputStream = &clog;
118 
119  return true;
120 }
std::ostream * m_outputStream
Definition: ossimAtpTool.h:55
bool m_helpRequested
Definition: ossimTool.h:150
std::basic_ifstream< char > ifstream
Class for char input file streams.
Definition: ossimIosFwd.h:44
bool read(const std::string &str)
search for an occurance of a string in the argument list, on sucess remove that occurance from the li...
virtual bool initialize(ossimArgumentParser &ap)
Initializes from command line arguments.
Definition: ossimTool.cpp:58
virtual void loadJSON(const Json::Value &json)
Reads processing params from JSON object provided.
#define CFATAL
std::basic_ofstream< char > ofstream
Class for char output file streams.
Definition: ossimIosFwd.h:47

◆ loadJSON()

void ATP::ossimAtpTool::loadJSON ( const Json::Value &  json_request)
virtual

Reads processing params from JSON object provided.

If all good, the object is ready for subsequent call to execute().

Note
Throws ossimException on error.

Reimplemented from ossimTool.

Definition at line 122 of file ossimAtpTool.cpp.

References ATP::AtpGenerator::ALGO_UNASSIGNED, ossim::JsonParam::asString(), CINFO, ATP::AtpGenerator::CROSSCORR, ATP::AtpGenerator::DESCRIPTOR, ossim::JsonConfig::diagnosticLevel(), GENERATE, GET_ALGO_LIST, GET_PARAMS, ossim::JsonConfig::getParameter(), ATP::AtpConfig::instance(), ossim::JsonConfig::loadJSON(), m_algorithm, m_configuration, m_method, m_photoBlock, ATP::AtpGenerator::NASA, and ATP::AtpConfig::readConfig().

Referenced by initialize().

123 {
124  ostringstream xmsg;
125  xmsg<<"ossimAtpTool::loadJSON() ";
126 
127  // Fetch the desired method from the JSON if provided, otherwise rely on command line options:
128  m_method = GENERATE;
129  string method = queryRoot["method"].asString();
130  if (method == "getAlgorithms")
132  else if (method == "getParameters")
134 
135  // Fetch the desired algorithm or configuration:
136  AtpConfig& config = AtpConfig::instance();
137  string algorithm = queryRoot["algorithm"].asString();
138  if (algorithm.empty())
139  {
140  // An optional field specifies a configuration that contains the base-name of a custom
141  // parameters JSON file including algorithm type. Read that if specified:
142  m_configuration = queryRoot["configuration"].asString();
143  if (!m_configuration.empty())
144  {
145  if (!config.readConfig(m_configuration))
146  {
147  xmsg << "Fatal error trying to read default ATP configuration for selected "
148  "configuration <"<<m_configuration<<">";
149  throw ossimException(xmsg.str());
150  }
151  algorithm = config.getParameter("algorithm").asString();
152  }
153  }
154  // Otherwise read the algorithm's default config params from the system:
155  else if (!config.readConfig(algorithm))
156  {
157  xmsg << "Fatal error trying to read default ATP configuration for selected algorithm <"
158  <<algorithm<<">";
159  throw ossimException(xmsg.str());
160  }
161 
162  // Assign enum data member used throughout the service:
163  if (algorithm == "crosscorr")
164  m_algorithm = (unsigned int) AtpGenerator::CROSSCORR;
165  else if (algorithm == "descriptor")
166  m_algorithm = (unsigned int) AtpGenerator::DESCRIPTOR;
167  else if (algorithm == "nasa")
168  m_algorithm = (unsigned int) AtpGenerator::NASA;
169  else
171 
172  // If parameters were provided in the JSON payload, have the config override the defaults:
173  const Json::Value& parameters = queryRoot["parameters"];
174  if (!parameters.isNull())
175  config.loadJSON(parameters);
176 
177  if (config.diagnosticLevel(2))
178  CINFO<<"\nATP configuration after loading:\n"<<config<<endl;
179 
180  if (m_method == GENERATE)
181  {
182  // Load the active photoblock from JSON.
183  // The root JSON object can optionally contain a photoblock with image list contained. If so,
184  // use that object to load images, otherwise use the root.
185  if (queryRoot.isMember("photoblock"))
186  m_photoBlock.reset(new PhotoBlock(queryRoot["photoblock"]));
187  else
188  m_photoBlock.reset(new PhotoBlock(queryRoot));
189  }
190 }
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
Definition: ossimIosFwd.h:35
std::string m_configuration
Definition: ossimAtpTool.h:60
unsigned int m_algorithm
Definition: ossimAtpTool.h:58
Class for representing MSP PhotoBlock.
Definition: PhotoBlock.h:25
std::shared_ptr< ossim::PhotoBlock > m_photoBlock
Definition: ossimAtpTool.h:62
static AtpConfig & instance()
Singleton implementation.
Definition: AtpConfig.cpp:20
#define CINFO

◆ saveJSON()

virtual void ATP::ossimAtpTool::saveJSON ( Json::Value &  json) const
inlinevirtual

Fetch product as JSON object when applicable Always returns true since using exception on error.

Parameters
jsonReturns non-empty object if valid response available.

Reimplemented from ossimTool.

Definition at line 43 of file ossimAtpTool.h.

43 { json = m_responseJSON; }
Json::Value m_responseJSON
Definition: ossimAtpTool.h:61

◆ setUsage()

void ATP::ossimAtpTool::setUsage ( ossimArgumentParser ap)
virtual

Initializes the aurgument parser with expected parameters and options.

It does not output anything. To see the usage, the caller will need to do something like:

ap.getApplicationUsage()->write(<ostream>);

This base class has some common arguments to add. The derived class should call this implementation in addition to setting its own arguments.

Reimplemented from ossimTool.

Definition at line 38 of file ossimAtpTool.cpp.

References ossimApplicationUsage::addCommandLineOption(), ossimArgumentParser::getApplicationName(), ossimArgumentParser::getApplicationUsage(), ossimApplicationUsage::setCommandLineUsage(), and ossimTool::setUsage().

39 {
40  // Add global usage options. Don't include ossimChipProcUtil options as not appropriate.
42 
43  // Set the general usage:
45  ossimString usageString = ap.getApplicationName();
46  usageString += " atp [options] \n\n";
47  usageString +=
48  "Accesses automatic tiepoint generation functionality given JSON request on stdin (or input file if\n"
49  "-i specified). The response JSON is output to stdout unless -o option is specified.\n";
50  au->setCommandLineUsage(usageString);
51 
52  // Set the command line options:
53  au->addCommandLineOption("--algorithms",
54  "List available auto-tie-point algorithms");
55  au->addCommandLineOption("-i <filename>",
56  "Reads request JSON from the input file specified instead of stdin.");
57  au->addCommandLineOption("-o <filename>",
58  "Outputs response JSON to the output file instead of stdout.");
59  au->addCommandLineOption("--parameters",
60  "List all ATP parameters with default values.");
61  au->addCommandLineOption("-v",
62  "Verbose. All non-response (debug) output to stdout is enabled.");
63 }
std::string getApplicationName() const
return the application name, as specified by argv[0]
void addCommandLineOption(const ossimString &option, const ossimString &explanation)
void setCommandLineUsage(const ossimString &explanation)
ossimApplicationUsage * getApplicationUsage()
virtual void setUsage(ossimArgumentParser &ap)
Initializes the aurgument parser with expected parameters and options.
Definition: ossimTool.cpp:41

Member Data Documentation

◆ DESCRIPTION

const char * ATP::ossimAtpTool::DESCRIPTION
static
Initial value:
=
"Provides automatic tiepoint generation functionality. This tool uses JSON format to "
"communicate requests and results."

Definition at line 25 of file ossimAtpTool.h.

◆ m_algorithm

unsigned int ATP::ossimAtpTool::m_algorithm
private

Definition at line 58 of file ossimAtpTool.h.

Referenced by doPairwiseMatching(), generate(), and loadJSON().

◆ m_configuration

std::string ATP::ossimAtpTool::m_configuration
private

Definition at line 60 of file ossimAtpTool.h.

Referenced by loadJSON().

◆ m_featureBased

bool ATP::ossimAtpTool::m_featureBased
private

Definition at line 57 of file ossimAtpTool.h.

◆ m_method

Method ATP::ossimAtpTool::m_method
private

Definition at line 59 of file ossimAtpTool.h.

Referenced by execute(), initialize(), and loadJSON().

◆ m_outputStream

std::ostream* ATP::ossimAtpTool::m_outputStream
private

Definition at line 55 of file ossimAtpTool.h.

Referenced by execute(), and initialize().

◆ m_photoBlock

std::shared_ptr<ossim::PhotoBlock> ATP::ossimAtpTool::m_photoBlock
private

Definition at line 62 of file ossimAtpTool.h.

Referenced by doPairwiseMatching(), and loadJSON().

◆ m_responseJSON

Json::Value ATP::ossimAtpTool::m_responseJSON
private

Definition at line 61 of file ossimAtpTool.h.

Referenced by doPairwiseMatching(), execute(), getAlgorithms(), and getParameters().

◆ m_verbose

bool ATP::ossimAtpTool::m_verbose
private

Definition at line 56 of file ossimAtpTool.h.

Referenced by initialize().


The documentation for this class was generated from the following files: