1 // This may look like C code, but it is really -*- C++ -*- 2 // 3 // Copyright Bob Friesenhahn, 1999, 2000, 2001, 2003 4 // Copyright Dirk Lemstra 2014-2017 5 // 6 // Simple C++ function wrappers for often used or otherwise 7 // inconvenient ImageMagick equivalents 8 // 9 10 #if !defined(Magick_Functions_header) 11 #define Magick_Functions_header 12 13 #include "Magick++/Include.h" 14 #include <string> 15 16 namespace Magick 17 { 18 // Clone C++ string as allocated C string, de-allocating any existing string 19 MagickPPExport void CloneString(char **destination_, 20 const std::string &source_); 21 22 // Disable OpenCL acceleration (only works when build with OpenCL support) 23 MagickPPExport void DisableOpenCL(void); 24 25 // Enable OpenCL acceleration (only works when build with OpenCL support) 26 MagickPPExport bool EnableOpenCL(void); 27 28 // C library initialization routine 29 MagickPPExport void InitializeMagick(const char *path_); 30 31 // Seed a new sequence of pseudo-random numbers 32 MagickPPExport void SetRandomSeed(const unsigned long seed); 33 34 // Set the ImageMagick security policy. 35 MagickPPExport bool SetSecurityPolicy(const std::string &policy_); 36 37 // C library initialization routine 38 MagickPPExport void TerminateMagick(); 39 } 40 #endif // Magick_Functions_header 41