Twain_DSM  1.0
Modules | Macros
Collaboration diagram for Platforms we support...:

Modules

 Cross platform functions, defines, and macroes
 Don't forget to include TWAIN...
 

Macros

#define TWNDSM_OS_WINDOWS   0x2001
 Preferably Win2K+.
 
#define TWNDSM_OS_MACOSX   0x2002
 Preferably 10.4+.
 
#define TWNDSM_OS_LINUX   0x2003
 Preferably 2.6+ kernel.
 
#define TWNDSM_CMP   TWNDSM_CMP_VISUALCPP
 If the user defines TWNDSM_CMP in their make file or project, then we'll assume they want to take responsibility for picking how we'll build the system. More...
 
#define TWNDSM_CMP_VERSION   _MSC_VER
 The version of the compliler used.
 
#define TWNDSM_OS   TWNDSM_OS_WINDOWS
 The Operating system of the compliler used.
 
#define TWNDSM_OS_32BIT   1
 defined to 1 if system is 32 bit
 
#define WIN32_LEAN_AND_MEAN
 Pull in the system specific headers...
 
#define __in
 We use resource.h to specify version info on all platforms... More...
 
#define __out
 
#define __in_opt
 

Detailed Description

Macro Definition Documentation

◆ __in

#define __in

We use resource.h to specify version info on all platforms...

These headers are available on all platforms... This is for IDEs like Visual Studio .Net 2003, that does not understand the SAL Annotations

Definition at line 181 of file dsm.h.

◆ TWNDSM_CMP

#define TWNDSM_CMP   TWNDSM_CMP_VISUALCPP

If the user defines TWNDSM_CMP in their make file or project, then we'll assume they want to take responsibility for picking how we'll build the system.

At this point it seems like the compiler definition is used to select which native library calls we're dealing with, while the os definition is more about where we'll expect to find stuff on the running system, like directories...

The compliler used

Definition at line 113 of file dsm.h.