+
+bool
+MagickImageProxy::same (shared_ptr<const ImageProxy> other) const
+{
+ shared_ptr<const MagickImageProxy> mp = dynamic_pointer_cast<const MagickImageProxy> (other);
+ if (!mp) {
+ return false;
+ }
+
+ if (_blob.length() != mp->_blob.length()) {
+ return false;
+ }
+
+ return memcmp (_blob.data(), mp->_blob.data(), _blob.length()) == 0;
+}
+
+AVPixelFormat
+MagickImageProxy::pixel_format () const
+{
+ return AV_PIX_FMT_RGB24;
+}
+
+size_t
+MagickImageProxy::memory_used () const
+{
+ size_t m = _blob.length();
+ if (_image) {
+ m += _image->memory_used();
+ }
+ return m;
+}