MeVisLabToolboxReference
mlUtilsSystemC.h File Reference

Pure C global definitions for mlUtils and ML. More...

#include "mlConfig.h"
#include "mlTypeDefs.h"
#include "mlSystemWarningsDisable.h"
#include <cstdlib>
#include <cstdio>
#include "mlSystemWarningsRestore.h"

Go to the source code of this file.

Macros

#define ML_UTILS_EXPORT   ML_LIBRARY_IMPORT_ATTRIBUTE
 Defines platform dependent DLL export macro for mlUtils. More...
 

Global non constant constants for "always true" or "always false" expressions.

ML_UTILS_EXPORT int MLAlwaysTrue
 Variable which is always true (=1), but non constant to make it impossible for compilers to detect that it is constant. More...
 
ML_UTILS_EXPORT int MLAlwaysFalse
 Variable which is always false (=0), but non constant to make it impossible for compilers to detect that it is constant. More...
 
ML_UTILS_EXPORT int MLAlwaysExecuted ()
 A do-nothing function call which cannot be optimized away to avoid that function bodies etc. More...
 
#define strcasecmp(a, b)   _stricmp((a),(b))
 Implement strcasecmp by providing the internal WIN32 API-version. More...
 
#define strncasecmp(a, b, c)   _strnicmp((a),(b),(c))
 Implement strncasecmp by providing the internal WIN32 API-version. More...
 
#define strtold(a, b)   strtod((a),(b))
 Implement strtold on WIN32 Microsoft platforms by strtod since long double and double are identical. More...
 
ML_UTILS_EXPORT MLint64 MLint64Scan (const char *source, char **endPtr) ML_RETURN_VALUE_SHOULD_BE_USED
 Reads an MLint64 from a character string source and returns scanned value as MLint64. More...
 
ML_UTILS_EXPORT MLuint64 MLuint64Scan (const char *source, char **endPtr) ML_RETURN_VALUE_SHOULD_BE_USED
 Reads an MLuint64 from a character string source and returns scanned value as MLuint64. More...
 

Detailed Description

Pure C global definitions for mlUtils and ML.

Author
Wolf Spindler
Date
3/2004

Definition in file mlUtilsSystemC.h.

Macro Definition Documentation

◆ ML_UTILS_EXPORT

#define ML_UTILS_EXPORT   ML_LIBRARY_IMPORT_ATTRIBUTE

Defines platform dependent DLL export macro for mlUtils.

Definition at line 18 of file mlUtilsSystemC.h.

◆ strcasecmp

#define strcasecmp (   a,
 
)    _stricmp((a),(b))

Implement strcasecmp by providing the internal WIN32 API-version.

Definition at line 80 of file mlUtilsSystemC.h.

◆ strncasecmp

#define strncasecmp (   a,
  b,
 
)    _strnicmp((a),(b),(c))

Implement strncasecmp by providing the internal WIN32 API-version.

Definition at line 83 of file mlUtilsSystemC.h.

◆ strtold

#define strtold (   a,
 
)    strtod((a),(b))

Implement strtold on WIN32 Microsoft platforms by strtod since long double and double are identical.

Definition at line 87 of file mlUtilsSystemC.h.

Function Documentation

◆ MLAlwaysExecuted()

ML_UTILS_EXPORT int MLAlwaysExecuted ( )

A do-nothing function call which cannot be optimized away to avoid that function bodies etc.

are optimized away, that they are considered as non constant and that corresponding warnings are created. It is needed for compile technical solutions to avoid warnings. Returns always 1. See also MLAlwaysTrue MLAlwaysFalse.

◆ MLint64Scan()

ML_UTILS_EXPORT MLint64 MLint64Scan ( const char *  source,
char **  endPtr 
)

Reads an MLint64 from a character string source and returns scanned value as MLint64.

Parameters
sourceis the string to be parsed. Leading white spaces are ignored.
endPtris the pointer to the first character after scanned string or to source if scan failed.
Returns
is a valid 64 bit signed integer if the string could be scanned. successfully; otherwise it is returned with a value given by source. This function is necessary since Microsoft forgot to implement _strtoi64 although it is well documented in the MSDN.

◆ MLuint64Scan()

ML_UTILS_EXPORT MLuint64 MLuint64Scan ( const char *  source,
char **  endPtr 
)

Reads an MLuint64 from a character string source and returns scanned value as MLuint64.

Parameters
sourceis the string to be parsed. Leading white spaces are ignored.
endPtris the pointer to the first character after scanned string or to source if scan failed.
Returns
is a valid 64 bit unsigned integer if the string could be scanned. successfully; otherwise it is returned with a value given by source. This function is necessary since Microsoft forgot to implement _strtoui64 although it's well documented in the MSDN.

Variable Documentation

◆ MLAlwaysFalse

ML_UTILS_EXPORT int MLAlwaysFalse

Variable which is always false (=0), but non constant to make it impossible for compilers to detect that it is constant.

It is needed for compile technical solutions in debug/release constructs which require always false expressions, e.g., in ML_TRY / ML_CATCH expressions. It must never be set! See also MLAlwaysTrue.

◆ MLAlwaysTrue

ML_UTILS_EXPORT int MLAlwaysTrue

Variable which is always true (=1), but non constant to make it impossible for compilers to detect that it is constant.

It is needed for compile technical solutions in debug/release constructs which require always true expressions, e.g., in ML_TRY / ML_CATCH expressions. It must never be set! See also MLAlwaysFalse.