MeVisLab Toolbox Reference
mlUtilsSystemC.h
Go to the documentation of this file.
1/*************************************************************************************
2**
3** Copyright 2007, MeVis Medical Solutions AG
4**
5** The user may use this file in accordance with the license agreement provided with
6** the Software or, alternatively, in accordance with the terms contained in a
7** written agreement between the user and MeVis Medical Solutions AG.
8**
9** For further information use the contact form at https://www.mevislab.de/contact
10**
11**************************************************************************************/
12
13#ifndef ML_UTILS_SYSTEM_C_H
14#define ML_UTILS_SYSTEM_C_H
15
17
18#include "mlUtilities.h"
19
20// Include global compiler switches for the ML.
21#include "mlConfig.h"
22
23#include "mlTypeDefs.h"
24
25#include <ThirdPartyWarningsDisable.h>
26
27// We always need stdlib.h for, e.g., size_t.
28#include <cstdlib>
29
30// We always need stdio.h for, e.g., FILE in mlFileSystem.
31#include <cstdio>
32
33#include <ThirdPartyWarningsRestore.h>
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
39//--------------------------------------------------------------------------------------------
40//
43//
44//--------------------------------------------------------------------------------------------
45
52
59
67
68//----------------------------------------------------------------------------------
70//----------------------------------------------------------------------------------
71
72#ifdef WIN32
73
74 // WIN32 case:
76 #define strcasecmp(a,b) _stricmp((a),(b))
77
79 #define strncasecmp(a,b,c) _strnicmp((a),(b),(c))
80
83 #define strtold(a,b) strtod((a),(b))
84
85#else
86
88 ML_UTILS_EXPORT char* strlwr(char* a);
89
90#endif
91
99[[nodiscard]]
100ML_UTILS_EXPORT MLint64 MLint64Scan(const char* source, char** endPtr);
101
109[[nodiscard]]
110ML_UTILS_EXPORT MLuint64 MLuint64Scan(const char* source, char** endPtr);
112
113#ifdef __cplusplus
114}
115#endif
116
117#endif // __mlUtilsSystemC_H
118
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
UINT64 MLuint64
Introduce platform-independent 64-bit unsigned integer type.
Definition mlTypeDefs.h:425
INT64 MLint64
Include 64-bit integer support for Windows or Unix.
Definition mlTypeDefs.h:412
#define ML_UTILS_EXPORT
Definition mlUtilities.h:18
ML_UTILS_EXPORT int MLAlwaysFalse
Variable that is always false (=0), but non-constant, to make it impossible for compilers to detect t...
ML_UTILS_EXPORT int MLAlwaysTrue
Variable that is always true (=1), but non-constant, to make it impossible for compilers to detect th...
ML_UTILS_EXPORT MLuint64 MLuint64Scan(const char *source, char **endPtr)
Reads an MLuint64 from a character string source and returns scanned value as MLuint64.
ML_UTILS_EXPORT int MLAlwaysExecuted()
A do-nothing function call that cannot be optimized away to avoid that function bodies,...
ML_UTILS_EXPORT MLint64 MLint64Scan(const char *source, char **endPtr)
Reads an MLint64 from a character string source and returns scanned value as MLint64.