9 namespace io_handlers {
15 using Ptr = std::shared_ptr<IOHandler>;
25 static constexpr
const char*
extension() {
return ""; }
32 static constexpr
const char*
name() {
return ""; }
virtual void handleDefaultProjector() const =0
using a default projector is not allowed. The implementations define how this issue is handled...
Base class for all handlers (writers and parsers)
std::vector< std::string > ErrorMessages
static constexpr const char * name()
returns the name of this handler. Must not be empty for child classes
io::Configuration config()
virtual ~IOHandler()=default
const Projector * projector_
std::map< std::string, Attribute > Configuration
bool isDefault
The position of the origin.
const io::Configuration * config_
const Projector & projector() const
IOHandler(const Projector &projector, const io::Configuration &config=io::Configuration())
static constexpr const char * extension()
returns the extension supported by this parser
const Origin & origin() const
Obtain the internal origin.
std::shared_ptr< IOHandler > Ptr