Program Listing for File BaseOption.hpp
↰ Return to documentation for file (include/lvr2/config/BaseOption.hpp)
/*
* BaseOption.hpp
*
* Created on: Feb 4, 2015
* Author: twiemann
*/
#ifndef INCLUDE_LIBLVR2_CONFIG_BASEOPTION_HPP_
#define INCLUDE_LIBLVR2_CONFIG_BASEOPTION_HPP_
#include <boost/program_options.hpp>
#include <iostream>
#include "lvr2/util/CoordinateTransform.hpp"
namespace lvr2
{
using namespace boost::program_options;
class BaseOption
{
public:
BaseOption(int argc, char** argv);
virtual ~BaseOption();
void printTransformation(std::ostream& out) const;
float sx() const { return m_variables["sx"].as<float>();}
float sy() const { return m_variables["sy"].as<float>();}
float sz() const { return m_variables["sz"].as<float>();}
int x() const { return m_variables["xPos"].as<int>();}
int y() const { return m_variables["yPos"].as<int>();}
int z() const { return m_variables["zPos"].as<int>();}
CoordinateTransform<float> coordinateTransform() const;
void printLogo() const;
protected:
virtual void setup();
void setupInputTransformation();
variables_map m_variables;
options_description m_descr;
positional_options_description m_pdescr;
CoordinateTransform<float>* m_coordinateTransform;
int m_argc;
char** m_argv;
};
} /* namespace lvr2 */
#endif /* INCLUDE_LIBLVR2_CONFIG_BASEOPTION_HPP_ */