Magick++
6.9.3
ImageRef.h
Go to the documentation of this file.
1
// This may look like C code, but it is really -*- C++ -*-
2
//
3
// Copyright Bob Friesenhahn, 1999, 2000, 2001, 2002
4
// Copyright Dirk Lemstra 2015
5
//
6
// Definition of an Image reference
7
//
8
// This is a private implementation class which should never be
9
// referenced by any user code.
10
//
11
12
#if !defined(Magick_ImageRef_header)
13
#define Magick_ImageRef_header
14
15
#include "
Magick++/Include.h
"
16
#include "
Magick++/Thread.h
"
17
18
namespace
Magick
19
{
20
class
Options;
21
22
//
23
// Reference counted access to Image *
24
//
25
class
MagickPPExport
ImageRef
26
{
27
friend
class
Image
;
28
29
private
:
30
31
// Construct with null image and default options
32
ImageRef
(
void
);
33
34
// Construct with an image pointer and default options
35
ImageRef
(
MagickCore::Image
*image_);
36
37
// Construct with an image pointer and options
38
ImageRef
(
MagickCore::Image
*image_,
const
Options
*options_);
39
40
// Destroy image and options
41
~
ImageRef
(
void
);
42
43
// Copy constructor and assignment are not supported
44
ImageRef
(
const
ImageRef
&);
45
ImageRef
& operator=(
const
ImageRef
&);
46
47
// Retrieve image from reference
48
void
image(
MagickCore::Image
*image_);
49
MagickCore::Image
*&image(
void
);
50
51
// Retrieve Options from reference
52
void
options(
Options
*options_);
53
Options
*options(
void
);
54
55
MagickCore::Image
*_image;
// ImageMagick Image
56
Options
*_options;
// User-specified options
57
::ssize_t _refCount;
// Reference count
58
MutexLock
_mutexLock;
// Mutex lock
59
};
60
61
}
// end of namespace Magick
62
63
//
64
// Inlines
65
//
66
67
inline
MagickCore::Image
*&Magick::ImageRef::image(
void
)
68
{
69
return
(_image);
70
}
71
72
inline
Magick::Options
*Magick::ImageRef::options(
void
)
73
{
74
return
(_options);
75
}
76
77
#endif // Magick_ImageRef_header
Magick::Options
Definition:
Options.h:28
Magick::ImageRef
Definition:
ImageRef.h:25
Magick::MutexLock
Definition:
Thread.h:34
Thread.h
MagickPPExport
#define MagickPPExport
Definition:
Include.h:255
Include.h
Magick::Image
class MagickPPExport Image
Definition:
Drawable.h:647
Magick
Definition:
Blob.h:15
Magick::Image
Definition:
Image.h:53
home
cristy
ImageMagick-6
Magick++
lib
Magick++
ImageRef.h
Generated by
1.8.10