From 9b8a73f22320ab8ec49212fc89934e4bb2b93097 Mon Sep 17 00:00:00 2001 From: dirk Date: Mon, 16 Jun 2014 19:54:15 +0000 Subject: [PATCH] Code cleanup. --- Magick++/lib/ImageRef.cpp | 121 ++++++++++++++++--------------- Magick++/lib/Magick++/ImageRef.h | 77 ++++++++------------ 2 files changed, 95 insertions(+), 103 deletions(-) diff --git a/Magick++/lib/ImageRef.cpp b/Magick++/lib/ImageRef.cpp index a5445cc830..914e888d37 100644 --- a/Magick++/lib/ImageRef.cpp +++ b/Magick++/lib/ImageRef.cpp @@ -14,93 +14,98 @@ #include "Magick++/Exception.h" #include "Magick++/Options.h" -// Construct with an image and default options -Magick::ImageRef::ImageRef ( MagickCore::Image * image_ ) - : _image(image_), - _options(new Options), - _id(-1), - _refCount(1), - _mutexLock() -{ -} - -// Construct with an image and options -// Inserts Image* in image, but copies Options into image. -Magick::ImageRef::ImageRef ( MagickCore::Image * image_, - const Options * options_ ) - : _image(image_), - _options(0), - _id(-1), - _refCount(1), - _mutexLock() -{ - _options = new Options( *options_ ); -} - -// Default constructor -Magick::ImageRef::ImageRef ( void ) +Magick::ImageRef::ImageRef(void) : _image(0), _options(new Options), _id(-1), _refCount(1), _mutexLock() { - // Allocate default image - ExceptionInfo exceptionInfo; - GetExceptionInfo( &exceptionInfo ); - - _image = AcquireImage( _options->imageInfo(), &exceptionInfo ); - throwException( exceptionInfo ); - (void) DestroyExceptionInfo( &exceptionInfo ); + GetPPException; + _image=AcquireImage(_options->imageInfo(),&exceptionInfo); + ThrowPPException; } -// Destructor -Magick::ImageRef::~ImageRef( void ) +Magick::ImageRef::ImageRef(MagickCore::Image *image_) + : _image(image_), + _options(new Options), + _id(-1), + _refCount(1), + _mutexLock() +{ +} + +Magick::ImageRef::ImageRef(MagickCore::Image *image_,const Options *options_) + : _image(image_), + _options(0), + _id(-1), + _refCount(1), + _mutexLock() +{ + _options=new Options(*options_); +} + +Magick::ImageRef::~ImageRef(void) { // Unregister image (if still registered) - if( _id > -1 ) + if (_id > -1) { - char id[MaxTextExtent]; + char + id[MaxTextExtent]; + sprintf(id,"%.20g",(double) _id); - DeleteImageRegistry( id ); + DeleteImageRegistry(id); _id=-1; } // Deallocate image - if ( _image ) + if (_image != (MagickCore::Image*) NULL) { - DestroyImageList( _image ); - _image = 0; + DestroyImageList(_image); + _image=(MagickCore::Image*) NULL; } // Deallocate image options delete _options; - _options = 0; + _options=(Options *) NULL; } -// Assign image to reference -void Magick::ImageRef::image ( MagickCore::Image * image_ ) +void Magick::ImageRef::id(const ssize_t id_) { - if(_image) - DestroyImageList( _image ); - _image = image_; + if (_id > -1) + { + char + id[MaxTextExtent]; + sprintf(id,"%.20g",(double) _id); + DeleteImageRegistry(id); + } + _id=id_; } -// Assign options to reference -void Magick::ImageRef::options ( Magick::Options * options_ ) +::ssize_t Magick::ImageRef::id(void) const +{ + return(_id); +} + +MagickCore::Image *&Magick::ImageRef::image(void) +{ + return(_image); +} + +void Magick::ImageRef::image(MagickCore::Image * image_) +{ + if (_image != (MagickCore::Image*) NULL) + DestroyImageList(_image); + _image=image_; +} + +void Magick::ImageRef::options(Magick::Options *options_) { delete _options; - _options = options_; + _options=options_; } -// Assign registration id to reference -void Magick::ImageRef::id ( const ssize_t id_ ) +Magick::Options *Magick::ImageRef::options(void) { - if( _id > -1 ) - { - char id[MaxTextExtent]; - sprintf(id,"%.20g",(double) _id); - DeleteImageRegistry( id ); - } - _id = id_; + return(_options); } diff --git a/Magick++/lib/Magick++/ImageRef.h b/Magick++/lib/Magick++/ImageRef.h index 87065ad214..cfd1259288 100644 --- a/Magick++/lib/Magick++/ImageRef.h +++ b/Magick++/lib/Magick++/ImageRef.h @@ -21,60 +21,47 @@ namespace Magick // // Reference counted access to Image * // - class MagickPPExport ImageRef { - friend class Image; + class MagickPPExport ImageRef + { + friend class Image; + private: - // Construct with an image pointer and default options - ImageRef ( MagickCore::Image * image_ ); - // Construct with an image pointer and options - ImageRef ( MagickCore::Image * image_, const Options * options_ ); + // Construct with null image and default options - ImageRef ( void ); + ImageRef(void); + + // Construct with an image pointer and default options + ImageRef(MagickCore::Image *image_); + + // Construct with an image pointer and options + ImageRef(MagickCore::Image *image_,const Options *options_); + // Destroy image and options - ~ImageRef ( void ); + ~ImageRef(void); // Copy constructor and assignment are not supported ImageRef(const ImageRef&); ImageRef& operator=(const ImageRef&); - - void image ( MagickCore::Image * image_ ); - MagickCore::Image *& image ( void ); - - void options ( Options * options_ ); - Options * options ( void ); - void id ( const ::ssize_t id_ ); - ::ssize_t id ( void ) const; - - MagickCore::Image * _image; // ImageMagick Image - Options * _options; // User-specified options - ::ssize_t _id; // Registry ID (-1 if not registered) - ::ssize_t _refCount; // Reference count - MutexLock _mutexLock;// Mutex lock + // Retrieve registration id from reference + void id(const ::ssize_t id_); + ::ssize_t id(void) const; + + // Retrieve image from reference + void image(MagickCore::Image *image_); + MagickCore::Image *&image(void); + + // Retrieve Options from reference + void options(Options *options_); + Options *options(void); + + MagickCore::Image *_image; // ImageMagick Image + Options *_options; // User-specified options + ::ssize_t _id; // Registry ID (-1 if not registered) + ::ssize_t _refCount; // Reference count + MutexLock _mutexLock; // Mutex lock }; } // end of namespace Magick -// -// Inlines -// - -// Retrieve image from reference -inline MagickCore::Image *& Magick::ImageRef::image ( void ) -{ - return _image; -} - -// Retrieve Options from reference -inline Magick::Options * Magick::ImageRef::options ( void ) -{ - return _options; -} - -// Retrieve registration id from reference -inline ::ssize_t Magick::ImageRef::id ( void ) const -{ - return _id; -} - -#endif // Magick_ImageRef_header +#endif // Magick_ImageRef_header \ No newline at end of file