Reference
Contains low-level functions and variables of the CImg
Library.
More...
Functions | |
std::FILE * | output (std::FILE *file) |
Get/set default output stream for the CImg library messages. More... | |
void | info () |
Print information about CImg environment variables. More... | |
template<typename T > | |
void | unused (const T &,...) |
Avoid warning messages due to unused parameters. Do nothing actually. | |
unsigned int & | exception_mode (const unsigned int mode) |
Set current CImg exception mode. More... | |
unsigned int & | exception_mode () |
Return current CImg exception mode. More... | |
unsigned int | openmp_mode (const unsigned int mode) |
Set current CImg openmp mode. More... | |
unsigned int | openmp_mode () |
Return current CImg openmp mode. | |
int | dialog (const char *const title, const char *const msg, const char *const button1_label, const char *const button2_label, const char *const button3_label, const char *const button4_label, const char *const button5_label, const char *const button6_label, const bool is_centered) |
Display a simple dialog box, and wait for the user's response [specialization]. | |
double | eval (const char *const expression, const double x, const double y, const double z, const double c) |
Evaluate math expression. More... | |
void | warn (const char *const format,...) |
Display a warning message on the default output stream. More... | |
int | system (const char *const command, const char *const module_name=0, const bool is_verbose=false) |
template<typename T > | |
T & | temporary (const T &) |
Return a reference to a temporary variable of type T. | |
template<typename T > | |
void | swap (T &a, T &b) |
Exchange values of variables a and b . | |
template<typename T1 , typename T2 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2) |
Exchange values of variables (a1 ,a2 ) and (b1 ,b2 ). | |
template<typename T1 , typename T2 , typename T3 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3) |
Exchange values of variables (a1 ,a2 ,a3 ) and (b1 ,b2 ,b3 ). | |
template<typename T1 , typename T2 , typename T3 , typename T4 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4) |
Exchange values of variables (a1 ,a2 ,...,a4 ) and (b1 ,b2 ,...,b4 ). | |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5) |
Exchange values of variables (a1 ,a2 ,...,a5 ) and (b1 ,b2 ,...,b5 ). | |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6) |
Exchange values of variables (a1 ,a2 ,...,a6 ) and (b1 ,b2 ,...,b6 ). | |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7) |
Exchange values of variables (a1 ,a2 ,...,a7 ) and (b1 ,b2 ,...,b7 ). | |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > | |
void | swap (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7, T8 &a8, T8 &b8) |
Exchange values of variables (a1 ,a2 ,...,a8 ) and (b1 ,b2 ,...,b8 ). | |
bool | endianness () |
Return the endianness of the current architecture. More... | |
template<typename T > | |
void | invert_endianness (T *const buffer, const unsigned long size) |
Reverse endianness of all elements in a memory buffer. More... | |
template<typename T > | |
T & | invert_endianness (T &a) |
Reverse endianness of a single variable. More... | |
unsigned long long | time () |
Return the value of a system timer, with a millisecond precision. More... | |
unsigned long long | tic () |
Start tic/toc timer for time measurement between code instructions. More... | |
unsigned long long | toc () |
End tic/toc timer and displays elapsed time from last call to tic(). More... | |
void | sleep (const unsigned int milliseconds) |
Sleep for a given numbers of milliseconds. More... | |
unsigned int | wait (const unsigned int milliseconds) |
Wait for a given number of milliseconds since the last call to wait(). More... | |
template<typename T , typename t > | |
T | cut (const T &val, const t &val_min, const t &val_max) |
Cut (i.e. clamp) value in specified interval. | |
template<typename T > | |
T | rol (const T &a, const unsigned int n=1) |
Bitwise-rotate value on the left. | |
template<typename T > | |
T | ror (const T &a, const unsigned int n=1) |
Bitwise-rotate value on the right. | |
template<typename T > | |
T | abs (const T &a) |
Return absolute value of a value. | |
double | acosh (const double x) |
Return hyperbolic arcosine of a value. | |
double | asinh (const double x) |
Return hyperbolic arcsine of a value. | |
double | atanh (const double x) |
Return hyperbolic arctangent of a value. | |
double | sinc (const double x) |
Return the sinc of a given value. | |
double | log2 (const double x) |
Return base-2 logarithm of a value. | |
template<typename T > | |
T | sqr (const T &val) |
Return square of a value. | |
template<typename T > | |
double | cbrt (const T &x) |
Return cubic root of a value. | |
template<typename t > | |
t | min (const t &a, const t &b, const t &c) |
Return the minimum between three values. | |
template<typename t > | |
t | min (const t &a, const t &b, const t &c, const t &d) |
Return the minimum between four values. | |
template<typename t > | |
t | minabs (const t &a, const t &b) |
Return the minabs between two values. | |
template<typename t > | |
t | max (const t &a, const t &b, const t &c) |
Return the maximum between three values. | |
template<typename t > | |
t | max (const t &a, const t &b, const t &c, const t &d) |
Return the maximum between four values. | |
template<typename t > | |
t | maxabs (const t &a, const t &b) |
Return the maxabs between two values. | |
template<typename T > | |
T | sign (const T &x) |
Return the sign of a value. | |
template<typename T > | |
unsigned long long | nearest_pow2 (const T &x) |
Return the nearest power of 2 higher than given value. | |
template<typename T > | |
T | mod (const T &x, const T &m) |
Return the modulo of a value. More... | |
template<typename T > | |
T | minmod (const T &a, const T &b) |
Return the min-mod of two values. More... | |
template<typename T > | |
T | round (const T &x, const double y, const int rounding_type=0) |
Return rounded value. More... | |
template<typename T > | |
T | hypot (const T x, const T y) |
Return sqrt(x^2 + y^2). | |
template<typename T > | |
T | hypot (const T x, const T y, const T z) |
Return sqrt(x^2 + y^2 + z^2). | |
double | factorial (const int n) |
Return the factorial of n. | |
double | permutations (const int k, const int n, const bool with_order) |
Return the number of permutations of k objects in a set of n objects. | |
double | fibonacci (const int n) |
Calculate fibonacci number. | |
template<typename T > | |
T | gcd (T a, T b) |
Calculate greatest common divisor of two integers. | |
template<typename T > | |
T | lcm (T a, T b) |
Calculate least common multiple of two integers. | |
char | lowercase (const char x) |
Convert character to lower case. | |
void | lowercase (char *const str) |
Convert C-string to lower case. | |
char | uppercase (const char x) |
Convert character to upper case. | |
void | uppercase (char *const str) |
Convert C-string to upper case. | |
bool | is_blank (const char c) |
Return true if input character is blank (space, tab, or non-printable character). | |
bool | is_varname (const char *const str, const unsigned int length=~0U) |
Return true if argument str can be considered as a regular variable name. | |
double | atof (const char *const str) |
Read value in a C-string. More... | |
int | strncasecmp (const char *const str1, const char *const str2, const int length) |
Compare the first length characters of two C-strings, ignoring the case. More... | |
int | strcasecmp (const char *const str1, const char *const str2) |
Compare two C-strings, ignoring the case. More... | |
char * | strellipsize (char *const str, const unsigned int l=64, const bool is_ending=true) |
Ellipsize a string. More... | |
char * | strellipsize (const char *const str, char *const res, const unsigned int l=64, const bool is_ending=true) |
Ellipsize a string. More... | |
bool | strpare (char *const str, const char delimiter, const bool is_symmetric, const bool is_iterative) |
Remove delimiters on the start and/or end of a C-string. More... | |
bool | strpare (char *const str, const bool is_symmetric, const bool is_iterative) |
Remove white spaces on the start and/or end of a C-string. | |
void | strwindows_reserved (char *const str, const char c='_') |
Replace reserved characters (for Windows filename) by another character. More... | |
void | strunescape (char *const str) |
Replace escape sequences in C-strings by character values. More... | |
const char * | basename (const char *const s, const char separator='/') |
Return the basename of a filename. | |
std::FILE * | fopen (const char *const path, const char *const mode) |
Open a file. More... | |
int | fclose (std::FILE *file) |
Close a file. More... | |
int | fseek (FILE *stream, long offset, int origin) |
Version of 'fseek()' that supports >=64bits offsets everywhere (for Windows). | |
long | ftell (FILE *stream) |
Version of 'ftell()' that supports >=64bits offsets everywhere (for Windows). | |
bool | is_directory (const char *const path) |
Check if a path is a directory. More... | |
bool | is_file (const char *const path) |
Check if a path is a file. More... | |
long long | fsize (std::FILE *const file) |
Get file size. More... | |
template<typename T > | |
int | fdate (const char *const path, T *attr, const unsigned int nb_attr) |
Get last write time of a given file or directory (multiple-attributes version). More... | |
int | fdate (const char *const path, unsigned int attr) |
Get last write time of a given file or directory (single-attribute version). More... | |
template<typename T > | |
int | date (T *attr, const unsigned int nb_attr) |
Get current local time (multiple-attributes version). More... | |
int | date (unsigned int attr) |
Get current local time (single-attribute version). More... | |
const char * | curl_path (const char *const user_path, const bool reinit_path) |
Search path of an executable. More... | |
const char * | dcraw_path (const char *const user_path, const bool reinit_path) |
Get/set path to the dcraw binary. More... | |
const char * | ffmpeg_path (const char *const user_path, const bool reinit_path) |
Get/set path to the FFMPEG's ffmpeg binary. More... | |
const char * | graphicsmagick_path (const char *const user_path, const bool reinit_path) |
Get/set path to the GraphicsMagick's gm binary. More... | |
const char * | gunzip_path (const char *const user_path, const bool reinit_path) |
Get/set path to the gunzip binary. More... | |
const char * | gzip_path (const char *const user_path, const bool reinit_path) |
Get/set path to the gzip binary. More... | |
const char * | imagemagick_path (const char *const user_path, const bool reinit_path) |
Get/set path to the ImageMagick's convert binary. More... | |
const char * | medcon_path (const char *const user_path, const bool reinit_path) |
Get/set path to the Medcon's medcon binary. More... | |
const char * | temporary_path (const char *const user_path, const bool reinit_path) |
Get/set path to store temporary files. More... | |
const char * | wget_path (const char *const user_path, const bool reinit_path) |
Get/set path to the wget binary. More... | |
const char * | split_filename (const char *const filename, char *const body=0) |
Split filename into two C-strings body and extension . More... | |
char * | number_filename (const char *const filename, const int number, const unsigned int digits, char *const str) |
Generate a numbered version of a filename. | |
template<typename T > | |
size_t | fread (T *const ptr, const size_t nmemb, std::FILE *stream) |
Read data from file. More... | |
template<typename T > | |
size_t | fwrite (const T *ptr, const size_t nmemb, std::FILE *stream) |
Write data to file. More... | |
void | fempty (std::FILE *const file, const char *const filename) |
Create an empty file. More... | |
const char * | ftype (std::FILE *const file, const char *const filename) |
Try to guess format from an image file. More... | |
char * | load_network (const char *const url, char *const filename_local, const unsigned int timeout, const bool try_fallback, const char *const referer, const char *const user_agent) |
Load file from network as a local temporary file. More... | |
const char * | option (const char *const name, const int argc, const char *const *const argv, const char *const _default, const char *const usage, const bool reset_static) |
Return options specified on the command line. | |
CImgList< char > | files (const char *const path, const bool is_pattern=false, const unsigned int mode=2, const bool include_path=false) |
Return list of files/directories in specified directory. More... | |
template<typename t > | |
int | dialog (const char *const title, const char *const msg, const char *const button1_label, const char *const button2_label, const char *const button3_label, const char *const button4_label, const char *const button5_label, const char *const button6_label, const CImg< t > &logo, const bool is_centered=false) |
Display a simple dialog box, and wait for the user's response. More... | |
Variables | |
const unsigned int | keyESC = 1U |
Keycode for the ESC key (architecture-dependent) | |
const unsigned int | keyF1 = 2U |
Keycode for the F1 key (architecture-dependent) | |
const unsigned int | keyF2 = 3U |
Keycode for the F2 key (architecture-dependent) | |
const unsigned int | keyF3 = 4U |
Keycode for the F3 key (architecture-dependent) | |
const unsigned int | keyF4 = 5U |
Keycode for the F4 key (architecture-dependent) | |
const unsigned int | keyF5 = 6U |
Keycode for the F5 key (architecture-dependent) | |
const unsigned int | keyF6 = 7U |
Keycode for the F6 key (architecture-dependent) | |
const unsigned int | keyF7 = 8U |
Keycode for the F7 key (architecture-dependent) | |
const unsigned int | keyF8 = 9U |
Keycode for the F8 key (architecture-dependent) | |
const unsigned int | keyF9 = 10U |
Keycode for the F9 key (architecture-dependent) | |
const unsigned int | keyF10 = 11U |
Keycode for the F10 key (architecture-dependent) | |
const unsigned int | keyF11 = 12U |
Keycode for the F11 key (architecture-dependent) | |
const unsigned int | keyF12 = 13U |
Keycode for the F12 key (architecture-dependent) | |
const unsigned int | keyPAUSE = 14U |
Keycode for the PAUSE key (architecture-dependent) | |
const unsigned int | key1 = 15U |
Keycode for the 1 key (architecture-dependent) | |
const unsigned int | key2 = 16U |
Keycode for the 2 key (architecture-dependent) | |
const unsigned int | key3 = 17U |
Keycode for the 3 key (architecture-dependent) | |
const unsigned int | key4 = 18U |
Keycode for the 4 key (architecture-dependent) | |
const unsigned int | key5 = 19U |
Keycode for the 5 key (architecture-dependent) | |
const unsigned int | key6 = 20U |
Keycode for the 6 key (architecture-dependent) | |
const unsigned int | key7 = 21U |
Keycode for the 7 key (architecture-dependent) | |
const unsigned int | key8 = 22U |
Keycode for the 8 key (architecture-dependent) | |
const unsigned int | key9 = 23U |
Keycode for the 9 key (architecture-dependent) | |
const unsigned int | key0 = 24U |
Keycode for the 0 key (architecture-dependent) | |
const unsigned int | keyBACKSPACE = 25U |
Keycode for the BACKSPACE key (architecture-dependent) | |
const unsigned int | keyINSERT = 26U |
Keycode for the INSERT key (architecture-dependent) | |
const unsigned int | keyHOME = 27U |
Keycode for the HOME key (architecture-dependent) | |
const unsigned int | keyPAGEUP = 28U |
Keycode for the PAGEUP key (architecture-dependent) | |
const unsigned int | keyTAB = 29U |
Keycode for the TAB key (architecture-dependent) | |
const unsigned int | keyQ = 30U |
Keycode for the Q key (architecture-dependent) | |
const unsigned int | keyW = 31U |
Keycode for the W key (architecture-dependent) | |
const unsigned int | keyE = 32U |
Keycode for the E key (architecture-dependent) | |
const unsigned int | keyR = 33U |
Keycode for the R key (architecture-dependent) | |
const unsigned int | keyT = 34U |
Keycode for the T key (architecture-dependent) | |
const unsigned int | keyY = 35U |
Keycode for the Y key (architecture-dependent) | |
const unsigned int | keyU = 36U |
Keycode for the U key (architecture-dependent) | |
const unsigned int | keyI = 37U |
Keycode for the I key (architecture-dependent) | |
const unsigned int | keyO = 38U |
Keycode for the O key (architecture-dependent) | |
const unsigned int | keyP = 39U |
Keycode for the P key (architecture-dependent) | |
const unsigned int | keyDELETE = 40U |
Keycode for the DELETE key (architecture-dependent) | |
const unsigned int | keyEND = 41U |
Keycode for the END key (architecture-dependent) | |
const unsigned int | keyPAGEDOWN = 42U |
Keycode for the PAGEDOWN key (architecture-dependent) | |
const unsigned int | keyCAPSLOCK = 43U |
Keycode for the CAPSLOCK key (architecture-dependent) | |
const unsigned int | keyA = 44U |
Keycode for the A key (architecture-dependent) | |
const unsigned int | keyS = 45U |
Keycode for the S key (architecture-dependent) | |
const unsigned int | keyD = 46U |
Keycode for the D key (architecture-dependent) | |
const unsigned int | keyF = 47U |
Keycode for the F key (architecture-dependent) | |
const unsigned int | keyG = 48U |
Keycode for the G key (architecture-dependent) | |
const unsigned int | keyH = 49U |
Keycode for the H key (architecture-dependent) | |
const unsigned int | keyJ = 50U |
Keycode for the J key (architecture-dependent) | |
const unsigned int | keyK = 51U |
Keycode for the K key (architecture-dependent) | |
const unsigned int | keyL = 52U |
Keycode for the L key (architecture-dependent) | |
const unsigned int | keyENTER = 53U |
Keycode for the ENTER key (architecture-dependent) | |
const unsigned int | keySHIFTLEFT = 54U |
Keycode for the SHIFTLEFT key (architecture-dependent) | |
const unsigned int | keyZ = 55U |
Keycode for the Z key (architecture-dependent) | |
const unsigned int | keyX = 56U |
Keycode for the X key (architecture-dependent) | |
const unsigned int | keyC = 57U |
Keycode for the C key (architecture-dependent) | |
const unsigned int | keyV = 58U |
Keycode for the V key (architecture-dependent) | |
const unsigned int | keyB = 59U |
Keycode for the B key (architecture-dependent) | |
const unsigned int | keyN = 60U |
Keycode for the N key (architecture-dependent) | |
const unsigned int | keyM = 61U |
Keycode for the M key (architecture-dependent) | |
const unsigned int | keySHIFTRIGHT = 62U |
Keycode for the SHIFTRIGHT key (architecture-dependent) | |
const unsigned int | keyARROWUP = 63U |
Keycode for the ARROWUP key (architecture-dependent) | |
const unsigned int | keyCTRLLEFT = 64U |
Keycode for the CTRLLEFT key (architecture-dependent) | |
const unsigned int | keyAPPLEFT = 65U |
Keycode for the APPLEFT key (architecture-dependent) | |
const unsigned int | keyALT = 66U |
Keycode for the ALT key (architecture-dependent) | |
const unsigned int | keySPACE = 67U |
Keycode for the SPACE key (architecture-dependent) | |
const unsigned int | keyALTGR = 68U |
Keycode for the ALTGR key (architecture-dependent) | |
const unsigned int | keyAPPRIGHT = 69U |
Keycode for the APPRIGHT key (architecture-dependent) | |
const unsigned int | keyMENU = 70U |
Keycode for the MENU key (architecture-dependent) | |
const unsigned int | keyCTRLRIGHT = 71U |
Keycode for the CTRLRIGHT key (architecture-dependent) | |
const unsigned int | keyARROWLEFT = 72U |
Keycode for the ARROWLEFT key (architecture-dependent) | |
const unsigned int | keyARROWDOWN = 73U |
Keycode for the ARROWDOWN key (architecture-dependent) | |
const unsigned int | keyARROWRIGHT = 74U |
Keycode for the ARROWRIGHT key (architecture-dependent) | |
const unsigned int | keyPAD0 = 75U |
Keycode for the PAD0 key (architecture-dependent) | |
const unsigned int | keyPAD1 = 76U |
Keycode for the PAD1 key (architecture-dependent) | |
const unsigned int | keyPAD2 = 77U |
Keycode for the PAD2 key (architecture-dependent) | |
const unsigned int | keyPAD3 = 78U |
Keycode for the PAD3 key (architecture-dependent) | |
const unsigned int | keyPAD4 = 79U |
Keycode for the PAD4 key (architecture-dependent) | |
const unsigned int | keyPAD5 = 80U |
Keycode for the PAD5 key (architecture-dependent) | |
const unsigned int | keyPAD6 = 81U |
Keycode for the PAD6 key (architecture-dependent) | |
const unsigned int | keyPAD7 = 82U |
Keycode for the PAD7 key (architecture-dependent) | |
const unsigned int | keyPAD8 = 83U |
Keycode for the PAD8 key (architecture-dependent) | |
const unsigned int | keyPAD9 = 84U |
Keycode for the PAD9 key (architecture-dependent) | |
const unsigned int | keyPADADD = 85U |
Keycode for the PADADD key (architecture-dependent) | |
const unsigned int | keyPADSUB = 86U |
Keycode for the PADSUB key (architecture-dependent) | |
const unsigned int | keyPADMUL = 87U |
Keycode for the PADMUL key (architecture-dependent) | |
const unsigned int | keyPADDIV = 88U |
Keycode for the PADDDIV key (architecture-dependent) | |
const double | PI = 3.14159265358979323846 |
Value of the mathematical constant PI. | |
Contains low-level functions and variables of the CImg
Library.
Most of the functions and variables within this namespace are used by the CImg
library for low-level operations. You may use them to access specific const values or environment variables internally used by CImg
.
using namespace cimg_library::cimg;
in your source code. Lot of functions in the cimg:: namespace
have the same names as standard C functions that may be defined in the global namespace ::
. std::FILE * output | ( | std::FILE * | file | ) |
Get/set default output stream for the CImg
library messages.
file | Desired output stream. Set to 0 to get the currently used output stream only. |
void info | ( | ) |
Print information about CImg
environment variables.
unsigned int& cimg_library::cimg::exception_mode | ( | const unsigned int | mode | ) |
Set current CImg
exception mode.
The way error messages are handled by CImg
can be changed dynamically, using this function.
mode | Desired exception mode. Possible values are:
|
unsigned int& cimg_library::cimg::exception_mode | ( | ) |
Return current CImg
exception mode.
cimg_verbosity
unsigned int cimg_library::cimg::openmp_mode | ( | const unsigned int | mode | ) |
Set current CImg
openmp mode.
The way openmp-based methods are handled by CImg
can be changed dynamically, using this function.
mode | Desired openmp mode. Possible values are:
|
double eval | ( | const char *const | expression, |
const double | x, | ||
const double | y, | ||
const double | z, | ||
const double | c | ||
) |
Evaluate math expression.
expression | C-string describing the formula to evaluate. |
x | Value of the pre-defined variable x . |
y | Value of the pre-defined variable y . |
z | Value of the pre-defined variable z . |
c | Value of the pre-defined variable c . |
expression
to 0
to keep evaluating the last specified expression
. void cimg_library::cimg::warn | ( | const char *const | format, |
... | |||
) |
Display a warning message on the default output stream.
format | C-string containing the format of the message, as with std::printf() . |
cimg_strict_warnings
is set, this function throws a CImgWarningException
instead. warning_message
can be arbitrary, to prevent nasty memory access. int cimg_library::cimg::system | ( | const char *const | command, |
const char *const | module_name = 0 , |
||
const bool | is_verbose = false |
||
) |
command | C-string containing the command line to execute. |
module_name | Module name. |
std::system()
but it does not open an extra console windows on Windows-based systems. bool cimg_library::cimg::endianness | ( | ) |
Return the endianness of the current architecture.
false
for Little Endian or true
for Big Endian. void cimg_library::cimg::invert_endianness | ( | T *const | buffer, |
const unsigned long | size | ||
) |
Reverse endianness of all elements in a memory buffer.
[in,out] | buffer | Memory buffer whose endianness must be reversed. |
size | Number of buffer elements to reverse. |
T& cimg_library::cimg::invert_endianness | ( | T & | a | ) |
Reverse endianness of a single variable.
[in,out] | a | Variable to reverse. |
unsigned long long cimg_library::cimg::time | ( | ) |
Return the value of a system timer, with a millisecond precision.
0
. unsigned long long cimg_library::cimg::tic | ( | ) |
Start tic/toc timer for time measurement between code instructions.
unsigned long long cimg_library::cimg::toc | ( | ) |
void cimg_library::cimg::sleep | ( | const unsigned int | milliseconds | ) |
Sleep for a given numbers of milliseconds.
milliseconds | Number of milliseconds to wait for. |
unsigned int cimg_library::cimg::wait | ( | const unsigned int | milliseconds | ) |
Wait for a given number of milliseconds since the last call to wait().
milliseconds | Number of milliseconds to wait for. |
T cimg_library::cimg::mod | ( | const T & | x, |
const T & | m | ||
) |
Return the modulo of a value.
x | Input value. |
m | Modulo value. |
T cimg_library::cimg::minmod | ( | const T & | a, |
const T & | b | ||
) |
Return the min-mod of two values.
a
,b
) is defined to be:a
,b
) = min(a
,b
), if a
and b
have the same sign.a
,b
) = 0, if a
and b
have different signs. T cimg_library::cimg::round | ( | const T & | x, |
const double | y, | ||
const int | rounding_type = 0 |
||
) |
Return rounded value.
x | Value to be rounded. |
y | Rounding precision. |
rounding_type | Type of rounding operation (0 = nearest, -1 = backward, 1 = forward). |
x
. double cimg_library::cimg::atof | ( | const char *const | str | ) |
Read value in a C-string.
str | C-string containing the float value to read. |
std::atof()
extended to manage the retrieval of fractions from C-strings, as in "1/2". int cimg_library::cimg::strncasecmp | ( | const char *const | str1, |
const char *const | str2, | ||
const int | length | ||
) |
Compare the first length
characters of two C-strings, ignoring the case.
str1 | C-string. |
str2 | C-string. |
length | Number of characters to compare. |
0
if the two strings are equal, something else otherwise. int cimg_library::cimg::strcasecmp | ( | const char *const | str1, |
const char *const | str2 | ||
) |
Compare two C-strings, ignoring the case.
str1 | C-string. |
str2 | C-string. |
0
if the two strings are equal, something else otherwise. char* cimg_library::cimg::strellipsize | ( | char *const | str, |
const unsigned int | l = 64 , |
||
const bool | is_ending = true |
||
) |
Ellipsize a string.
str | C-string. |
l | Max number of printed characters. |
is_ending | Tell if the dots are placed at the end or at the center of the ellipsized string. |
char* cimg_library::cimg::strellipsize | ( | const char *const | str, |
char *const | res, | ||
const unsigned int | l = 64 , |
||
const bool | is_ending = true |
||
) |
Ellipsize a string.
str | C-string. |
res | output C-string. |
l | Max number of printed characters. String 'res' must be a size of at least 'l+1'. |
is_ending | Tell if the dots are placed at the end or at the center of the ellipsized string. |
bool cimg_library::cimg::strpare | ( | char *const | str, |
const char | delimiter, | ||
const bool | is_symmetric, | ||
const bool | is_iterative | ||
) |
Remove delimiters on the start and/or end of a C-string.
[in,out] | str | C-string to work with (modified at output). |
delimiter | Delimiter character code to remove. | |
is_symmetric | Tells if the removal is done only if delimiters are symmetric (both at the beginning and the end of s ). | |
is_iterative | Tells if the removal is done if several iterations are possible. |
true
if delimiters have been removed, false
otherwise. void cimg_library::cimg::strwindows_reserved | ( | char *const | str, |
const char | c = '_' |
||
) |
Replace reserved characters (for Windows filename) by another character.
[in,out] | str | C-string to work with (modified at output). |
[in] | c | Replacement character. |
void cimg_library::cimg::strunescape | ( | char *const | str | ) |
Replace escape sequences in C-strings by character values.
[in,out] | str | C-string to work with (modified at output). |
std::FILE* cimg_library::cimg::fopen | ( | const char *const | path, |
const char *const | mode | ||
) |
Open a file.
path | Path of the filename to open. |
mode | C-string describing the opening mode. |
std::fopen()
but throw a CImgIOException
when the specified file cannot be opened, instead of returning 0
. int cimg_library::cimg::fclose | ( | std::FILE * | file | ) |
Close a file.
file | File to close. |
0
if file has been closed properly, something else otherwise. std::fclose()
but display a warning message if the file has not been closed properly. bool cimg_library::cimg::is_directory | ( | const char *const | path | ) |
Check if a path is a directory.
path | Specified path to test. |
bool cimg_library::cimg::is_file | ( | const char *const | path | ) |
Check if a path is a file.
path | Specified path to test. |
long long cimg_library::cimg::fsize | ( | std::FILE *const | file | ) |
Get file size.
filename | Specified filename to get size from. |
int cimg_library::cimg::fdate | ( | const char *const | path, |
T * | attr, | ||
const unsigned int | nb_attr | ||
) |
Get last write time of a given file or directory (multiple-attributes version).
path | Specified path to get attributes from. | |
[in,out] | attr | Type of requested time attributes. Can be { 0=year | 1=month | 2=day | 3=day of week | 4=hour | 5=minute | 6=second } Replaced by read attributes after return (or -1 if an error occurred). |
nb_attr | Number of attributes to read/write. |
int cimg_library::cimg::fdate | ( | const char *const | path, |
unsigned int | attr | ||
) |
Get last write time of a given file or directory (single-attribute version).
path | Specified path to get attributes from. |
attr | Type of requested time attributes. Can be { 0=year | 1=month | 2=day | 3=day of week | 4=hour | 5=minute | 6=second } |
int cimg_library::cimg::date | ( | T * | attr, |
const unsigned int | nb_attr | ||
) |
Get current local time (multiple-attributes version).
[in,out] | attr | Type of requested time attributes. Can be { 0=year | 1=month | 2=day | 3=day of week | 4=hour | 5=minute | 6=second | 7=millisecond } Replaced by read attributes after return (or -1 if an error occurred). |
nb_attr | Number of attributes to read/write. |
int cimg_library::cimg::date | ( | unsigned int | attr | ) |
Get current local time (single-attribute version).
attr | Type of requested time attribute. Can be { 0=year | 1=month | 2=day | 3=day of week | 4=hour | 5=minute | 6=second | 7=millisecond } |
const char * curl_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Search path of an executable.
Get the file or directory attributes with support for UTF-8 paths (Windows only). Get/set path to the Program Files/ directory (Windows only).
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
curl
binary. user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
curl
binary. const char * dcraw_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the dcraw
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
dcraw
binary. const char * ffmpeg_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the FFMPEG's ffmpeg
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
ffmpeg
binary. const char * graphicsmagick_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the GraphicsMagick's gm
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
gm
binary. const char * gunzip_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the gunzip
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
gunzip
binary. const char * gzip_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the gzip
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
gzip
binary. const char * imagemagick_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the ImageMagick's convert
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
convert
binary. const char * medcon_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the Medcon's medcon
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
medcon
binary. const char * temporary_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to store temporary files.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
const char * wget_path | ( | const char *const | user_path, |
const bool | reinit_path | ||
) |
Get/set path to the wget
binary.
user_path | Specified path, or 0 to get the path currently used. |
reinit_path | Force path to be recalculated (may take some time). |
wget
binary. const char* cimg_library::cimg::split_filename | ( | const char *const | filename, |
char *const | body = 0 |
||
) |
Split filename into two C-strings body
and extension
.
filename and body must not overlap!
size_t cimg_library::cimg::fread | ( | T *const | ptr, |
const size_t | nmemb, | ||
std::FILE * | stream | ||
) |
Read data from file.
[out] | ptr | Pointer to memory buffer that will contain the binary data read from file. |
nmemb | Number of elements to read. | |
stream | File to read data from. |
std::fread()
but may display warning message if all elements could not be read. size_t cimg_library::cimg::fwrite | ( | const T * | ptr, |
const size_t | nmemb, | ||
std::FILE * | stream | ||
) |
Write data to file.
ptr | Pointer to memory buffer containing the binary data to write on file. | |
nmemb | Number of elements to write. | |
[out] | stream | File to write data on. |
std::fwrite
but may display warning messages if all elements could not be written. void cimg_library::cimg::fempty | ( | std::FILE *const | file, |
const char *const | filename | ||
) |
Create an empty file.
file | Input file (can be 0 if filename is set). |
filename | Filename, as a C-string (can be 0 if file is set). |
const char * ftype | ( | std::FILE *const | file, |
const char *const | filename | ||
) |
Try to guess format from an image file.
file | Input file (can be 0 if filename is set). |
filename | Filename, as a C-string (can be 0 if file is set). |
0
if nothing has been guessed. char * load_network | ( | const char *const | url, |
char *const | filename_local, | ||
const unsigned int | timeout, | ||
const bool | try_fallback, | ||
const char *const | referer, | ||
const char *const | user_agent | ||
) |
Load file from network as a local temporary file.
url | URL of the filename, as a C-string. | |
[out] | filename_local | C-string containing the path to a local copy of filename . |
timeout | Maximum time (in seconds) authorized for downloading the file from the URL. | |
try_fallback | When using libcurl, tells using system calls as fallbacks in case of libcurl failure. | |
referer | Referer used, as a C-string. | |
user_agent | User agent used, as a C-string. |
filename_local
. libcurl
library, or the external binaries wget
or curl
to perform the download. CImgList<char> cimg_library::cimg::files | ( | const char *const | path, |
const bool | is_pattern = false , |
||
const unsigned int | mode = 2 , |
||
const bool | include_path = false |
||
) |
Return list of files/directories in specified directory.
path | Path to the directory. Set to 0 for current directory. |
is_pattern | Tell if specified path has a matching pattern in it. |
mode | Output type, can be primary { 0=files only | 1=folders only | 2=files + folders }. |
include_path | Tell if path must be included in resulting filenames. |
int cimg_library::cimg::dialog | ( | const char *const | title, |
const char *const | msg, | ||
const char *const | button1_label, | ||
const char *const | button2_label, | ||
const char *const | button3_label, | ||
const char *const | button4_label, | ||
const char *const | button5_label, | ||
const char *const | button6_label, | ||
const CImg< t > & | logo, | ||
const bool | is_centered = false |
||
) |
Display a simple dialog box, and wait for the user's response.
title | Title of the dialog window. |
msg | Main message displayed inside the dialog window. |
button1_label | Label of the 1st button. |
button2_label | Label of the 2nd button (0 to hide button). |
button3_label | Label of the 3rd button (0 to hide button). |
button4_label | Label of the 4th button (0 to hide button). |
button5_label | Label of the 5th button (0 to hide button). |
button6_label | Label of the 6th button (0 to hide button). |
logo | Image logo displayed at the left of the main message. |
is_centered | Tells if the dialog window must be centered on the screen. |
0
to 5
), or -1
if the dialog window has been closed by the user.
Copyrights (C) From october 2004, David Tschumperlé - GREYC UMR CNRS 6072, Image team.
Copyrights (C) January->September 2004, David Tschumperlé.
Copyrights (C) 2000->2003, David Tschumperlé - INRIA Sophia-Antipolis. Odyssée group.