+ virtual void load(Image::Data &);
+protected:
+ virtual void load_(Image::Data &) = 0;
+
+public:
+ State get_state() const { return state; }
+
+ template<typename T>
+ static void register_loader();
+private:
+ static Registry &get_registry();
+
+ static bool signature_size_compare(RegisterBase *, RegisterBase *);