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;
101 bool save(
const std::string& fname,
const Data& data)
const;
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;
virtual void do_get_help_xml(CXMLElement &root) const
This class implements a facade for the xml Element.
The templatex basis class of all IO plug-ins.
std::set< std::string > SuffixSet
void add_supported_type(EPixelType t)
add pixel type t to the list of supported types
TIOPlugin(const char *name)
D::type Data
type of the data handled by this plug-in
std::shared_ptr< Data > PData
shared pointer of the data handled by this plug-in
void add_suffixes(std::multimap< std::string, std::string > &map) const
const PixelTypeSet & supported_pixel_types() const
std::set< EPixelType > PixelTypeSet
the type for the supported pixel types of this IO handler
bool save(const std::string &fname, const Data &data) const
const std::string get_preferred_suffix() const
PData load(const std::string &fname) const
void add_suffix(const std::string &suffix)
const SuffixSet & get_suffixes() const
The generic base for all plug-ins.
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
#define EXPORT_CORE
Macro to manage Visual C++ style dllimport/dllexport.
#define NS_MIA_END
conveniance define to end the mia namespace
EXPORT_CORE const char *const io_plugin_property_can_pipe
EXPORT_CORE const char *const io_plugin_property_has_attributes
EXPORT_CORE const char *const io_plugin_property_history_split
EXPORT_CORE const char *const io_plugin_property_multi_record