#if !defined(Magick_Options_header)
#define Magick_Options_header
#include "Magick++/Include.h"
#include <string>
#include "Magick++/Color.h"
#include "Magick++/Geometry.h"
#include "Magick++/Drawable.h"
namespace Magick
{
class Image;
class Options
{
public:
Options(void);
Options(const Options& options_);
~Options();
void antiAlias(bool flag_);
bool antiAlias(void) const;
void adjoin(bool flag_);
bool adjoin(void) const;
void backgroundColor(const Color &color_);
Color backgroundColor(void) const;
void backgroundTexture(const std::string &backgroundTexture_);
std::string backgroundTexture(void) const;
void borderColor(const Color &color_);
Color borderColor(void) const;
void boxColor(const Color &boxColor_);
Color boxColor(void) const;
void colorFuzz(double fuzz_);
double colorFuzz(void) const;
void colorspaceType(ColorspaceType colorspace_);
ColorspaceType colorspaceType(void) const;
void compressType(CompressionType compressType_);
CompressionType compressType(void) const;
void debug(bool flag_);
bool debug(void) const;
void density(const Geometry &geomery_);
Geometry density(void) const;
void depth(size_t depth_);
size_t depth(void) const;
void endian(EndianType endian_);
EndianType endian(void) const;
void file(FILE *file_);
FILE *file(void) const;
void fileName(const std::string &fileName_);
std::string fileName(void) const;
void fillColor(const Color &fillColor_);
Color fillColor(void) const;
void fillPattern(const MagickCore::Image *fillPattern_);
const MagickCore::Image *fillPattern(void) const;
void fillRule(const FillRule &fillRule_);
FillRule fillRule(void) const;
void font(const std::string &font_);
std::string font(void) const;
void fontFamily(const std::string &family_);
std::string fontFamily(void) const;
void fontPointsize(double pointSize_);
double fontPointsize(void) const;
void fontStyle(const StyleType style_);
StyleType fontStyle(void) const;
void fontWeight(const size_t weight_);
size_t fontWeight(void) const;
std::string format(void) const;
void interlaceType(InterlaceType interlace_);
InterlaceType interlaceType(void) const;
void magick(const std::string &magick_);
std::string magick(void) const;
void matteColor(const Color &matteColor_);
Color matteColor(void) const;
void monochrome(bool monochromeFlag_);
bool monochrome(void) const;
void page(const Geometry &pageSize_);
Geometry page(void) const;
void quality(size_t quality_);
size_t quality(void) const;
void quantizeColors(size_t colors_);
size_t quantizeColors(void) const;
void quantizeColorSpace(ColorspaceType colorSpace_);
ColorspaceType quantizeColorSpace(void) const;
void quantizeDither(bool ditherFlag_);
bool quantizeDither(void) const;
void quantizeDitherMethod(DitherMethod ditherMethod_);
DitherMethod quantizeDitherMethod(void) const;
void quantizeTreeDepth(size_t treeDepth_);
size_t quantizeTreeDepth(void) const;
void quiet(const bool quiet_);
bool quiet(void) const;
void resolutionUnits(ResolutionType resolutionUnits_);
ResolutionType resolutionUnits(void) const;
void samplingFactor(const std::string &samplingFactor_);
std::string samplingFactor(void) const;
void size(const Geometry &geometry_);
Geometry size(void) const;
void strokeAntiAlias(bool flag_);
bool strokeAntiAlias(void) const ;
void strokeColor(const Color &strokeColor_);
Color strokeColor(void) const;
void strokeDashArray(const double *strokeDashArray_);
const double *strokeDashArray(void) const;
void strokeDashOffset(double strokeDashOffset_);
double strokeDashOffset(void) const;
void strokeLineCap(LineCap lineCap_);
LineCap strokeLineCap(void) const;
void strokeLineJoin(LineJoin lineJoin_);
LineJoin strokeLineJoin(void) const;
void strokeMiterLimit(size_t miterLimit_);
size_t strokeMiterLimit(void) const;
void strokePattern(const MagickCore::Image *strokePattern_);
const MagickCore::Image *strokePattern(void) const;
void strokeWidth(double strokeWidth_);
double strokeWidth(void) const;
void subImage(size_t subImage_);
size_t subImage(void) const;
void subRange(size_t subRange_);
size_t subRange(void) const;
void textDirection(DirectionType direction_);
DirectionType textDirection() const;
void textEncoding(const std::string &encoding_);
std::string textEncoding(void) const;
void textGravity(GravityType gravity_);
GravityType textGravity() const;
void textInterlineSpacing(double spacing_);
double textInterlineSpacing(void) const;
void textInterwordSpacing(double spacing_);
double textInterwordSpacing(void) const;
void textKerning(double kerning_);
double textKerning(void) const;
void textUnderColor(const Color &underColor_);
Color textUnderColor(void) const;
void tileName(const std::string &tileName_);
std::string tileName(void) const;
void transformOrigin(double tx_,double ty_);
void transformReset(void);
void transformRotation(double angle_);
void transformScale(double sx_,double sy_);
void transformSkewX(double skewx_);
void transformSkewY(double skewy_);
void type(const ImageType type_);
ImageType type(void) const;
void verbose(bool verboseFlag_);
bool verbose(void) const;
void view(const std::string &view_);
std::string view(void) const;
void virtualPixelMethod(VirtualPixelMethod virtual_pixel_method_);
VirtualPixelMethod virtualPixelMethod(void) const;
void x11Display(const std::string &display_);
std::string x11Display(void) const;
MagickCore::DrawInfo *drawInfo(void);
MagickCore::ImageInfo *imageInfo(void);
MagickCore::QuantizeInfo *quantizeInfo(void);
Options(const MagickCore::ImageInfo *imageInfo_,
const MagickCore::QuantizeInfo *quantizeInfo_,
const MagickCore::DrawInfo *drawInfo_);
private:
Options& operator=(const Options&);
void setOption(const char *name,const Color &value_);
void setOption(const char *name,const double value_);
MagickCore::ImageInfo *_imageInfo;
MagickCore::QuantizeInfo *_quantizeInfo;
MagickCore::DrawInfo *_drawInfo;
bool _quiet;
};
}
#endif