Simbody
Namespaces | Defines | Typedefs | Functions

common.h File Reference

Mandatory first inclusion for any SimTK source or header file. More...

#include <stdio.h>

Go to the source code of this file.

Namespaces

namespace  SimTK
 

This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with other symbols.


Defines

#define SimTK_DEFAULT_PRECISION   2
 This compile-time constant determines the default precision used everywhere in SimTK Core code.
#define SimTK_DEBUG(s)   printf("DBG: " s)
#define SimTK_DEBUG1(s, a1)   printf("DBG: " s,a1)
#define SimTK_DEBUG2(s, a1, a2)   printf("DBG: " s,a1,a2)
#define SimTK_DEBUG3(s, a1, a2, a3)   printf("DBG: " s,a1,a2,a3)
#define SimTK_DEBUG4(s, a1, a2, a3, a4)   printf("DBG: " s,a1,a2,a3,a4)
#define SimTK_SimTKCOMMON_EXPORT

Typedefs

typedef double SimTK_Real
 This type is for use in C; in C++ use SimTK::Real instead.

Functions

void SimTK_version_SimTKcommon (int *major, int *minor, int *build)
 Obtain version information for the currently-loaded SimTKcommon library.
void SimTK_about_SimTKcommon (const char *key, int maxlen, char *value)
 Obtain "about" information for the currently-loaded SimTKcommon library.

Detailed Description

Mandatory first inclusion for any SimTK source or header file.

Every source and most header files using SimTK must include this header as its first inclusion. Declarations and definitions that must be available and compiler-and machine-specific issues are dealt with here.

This file must be includable from either C++ or ANSI C. It uses the ANSI-C++ macro "__cplusplus" for any code that will compile only under C++.


Define Documentation

#define SimTK_DEFAULT_PRECISION   2

This compile-time constant determines the default precision used everywhere in SimTK Core code.

Wherever a SimTK::Real, SimTK::Vector, SimTK::Matrix, etc. appears with no precision specified, it will have this underlying precision. We use 1==float, 2==double, 4==long double. Any other value will cause a compile time error. The default is 2, i.e., double precision.

#define SimTK_DEBUG (   s)    printf("DBG: " s)
#define SimTK_DEBUG1 (   s,
  a1 
)    printf("DBG: " s,a1)
#define SimTK_DEBUG2 (   s,
  a1,
  a2 
)    printf("DBG: " s,a1,a2)
#define SimTK_DEBUG3 (   s,
  a1,
  a2,
  a3 
)    printf("DBG: " s,a1,a2,a3)
#define SimTK_DEBUG4 (   s,
  a1,
  a2,
  a3,
  a4 
)    printf("DBG: " s,a1,a2,a3,a4)
#define SimTK_SimTKCOMMON_EXPORT

Typedef Documentation

typedef double SimTK_Real

This type is for use in C; in C++ use SimTK::Real instead.


Function Documentation

void SimTK_version_SimTKcommon ( int *  major,
int *  minor,
int *  build 
)

Obtain version information for the currently-loaded SimTKcommon library.

void SimTK_about_SimTKcommon ( const char *  key,
int  maxlen,
char *  value 
)

Obtain "about" information for the currently-loaded SimTKcommon library.

Available keywords are "version" (major.minor.build), "library", "type" (shared or static), "copyright", "svn_revision", "authors", "debug" (debug or release).

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines