Go to the documentation of this file.
21 #ifndef ph_ioplugin_hh
22 #define ph_ioplugin_hh
37 static const char *type_descr;
62 typedef typename D::type
Data;
65 typedef typename std::shared_ptr<Data >
PData;
83 void add_suffixes(std::multimap<std::string, std::string>& map)
const;
92 PData load(
const std::string& fname)
const;
101 bool save(
const std::string& fname,
const Data& data)
const;
113 const std::string get_preferred_suffix()
const;
116 void add_suffix(
const std::string& suffix);
130 virtual PData do_load(
const std::string& fname)
const = 0;
141 virtual bool do_save(
const std::string& fname,
const typename D::type& data)
const = 0;
143 virtual const std::string do_get_preferred_suffix()
const;
const EXPORT_CORE char *const io_plugin_property_history_split
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
virtual void do_get_help_xml(CXMLElement &root) const
const EXPORT_CORE char *const io_plugin_property_multi_record
D::type Data
type of the data handled by this plug-in
#define NS_MIA_END
conveniance define to end the mia namespace
This class implements a facade for the xml Element.
const EXPORT_CORE char *const io_plugin_property_can_pipe
The templatex basis class of all IO plug-ins.
The generic base for all plug-ins.
#define EXPORT_CORE
Macro to manage Visual C++ style dllimport/dllexport.
std::shared_ptr< Data > PData
shared pointer of the data handled by this plug-in
std::set< EPixelType > PixelTypeSet
the type for the supported pixel types of this IO handler
const EXPORT_CORE char *const io_plugin_property_has_attributes
std::set< std::string > SuffixSet