Common.h++ File Reference

#include <cstddef>
#include <sys/types.h>
#include <pthread.h>
#include <commonc++/Integers.h++>

Include dependency graph for Common.h++:

Go to the source code of this file.

Namespaces

namespace  ccxx

Defines

#define CCXX_VERSION   0x00000603
 Library version identifier.
#define CCXX_VERSION_MAJOR   ((uint_t)((CCXX_VERSION >> 16) & 0xFF))
#define CCXX_VERSION_MINOR   ((uint_t)((CCXX_VERSION >> 8) & 0xFF))
#define CCXX_VERSION_MICRO   ((uint_t)(CCXX_VERSION & 0xFF))
#define CCXX_OS_POSIX
 Defined if the host system is a POSIX OS.
#define COMMONCPP_API
#define COMMONCPPDB_API
#define COMMONCPPJVM_API
#define COMMONCPPXML_API
#define ___DEPRECATED(DECL)   DECL
 Macro for tagging functions and classes as "deprecated".
#define ___UNUSED
 Macro for tagging parameters and variables as "unused".
#define ___NORETURN(DECL)   DECL
 Macro for tagging functions as never returning.
#define CCXX_INVALID_FILE_HANDLE   (-1)
#define NUL   '\0'
 The NUL character (ASCII value 0).
#define WNUL   L'\0'
 The wide NUL character (ASCII value 0).
#define CCXX_LENGTHOF(A)   (sizeof(A) / sizeof(A[0]))
 Calculates the length of (the number of elements in) the statically-allocated array A.
#define CCXX_OFFSETOF(S, F)   ((size_t)(((void *)(&(((S)NULL)->F))) - ((void *)NULL)))
 Computes the offset, in bytes, of the field F in the aggregate type S.
#define CCXX_ZERO(V)   (std::memset(&(V), 0, sizeof(V)))
 Zero the memory occupied by the variable V.
#define __CCXX_STRINGIFY__(S)   #S
#define CCXX_STRINGIFY(S)   __CCXX_STRINGIFY__(S)
 Evaulates to a string constant representation of S.
#define __CCXX_UNIQUE_VARNAME__(pfx, id, sfx)   pfx ## _ ## id ## _ ## sfx
#define CCXX_UNIQUE_VARNAME(pfx, id, sfx)   __CCXX_UNIQUE_VARNAME__(pfx, id, sfx)
#define CCXX_STATIC_INITIALIZER
 Introduces a static initializer code block.
#define CCXX_COPY_DECLS(CLASS)
 Inlines declarations of a copy constructor and assignment operator for the class CLASS.
#define CCXX_FWD_DECL(CLASS)   namespace ccxx { class CLASS; };
 Inline a forward-declaration for the commonc++ class CLASS.

Typedefs

typedef pid_t ProcessHandle
typedef pid_t ProcessID
typedef pthread_t ThreadHandle
typedef pthread_t ThreadID
typedef int FileHandle

Enumerations

enum  Priority {
  PrioLowest, PrioLow, PrioNormal, PrioHigh,
  PrioHighest
}
 Thread and Process prority levels. More...
enum  Endianness { BigEndian = 0, LittleEndian = 1 }
 Byte endianness. More...


Define Documentation

#define ___DEPRECATED ( DECL   )     DECL

Macro for tagging functions and classes as "deprecated".

#define ___NORETURN ( DECL   )     DECL

Macro for tagging functions as never returning.

#define ___UNUSED

Macro for tagging parameters and variables as "unused".

#define __CCXX_STRINGIFY__ (  )     #S

#define __CCXX_UNIQUE_VARNAME__ ( pfx,
id,
sfx   )     pfx ## _ ## id ## _ ## sfx

#define CCXX_COPY_DECLS ( CLASS   ) 

Value:

CLASS(const CLASS &other);                    \
  CLASS& operator=(const CLASS &other);
Inlines declarations of a copy constructor and assignment operator for the class CLASS.

#define CCXX_FWD_DECL ( CLASS   )     namespace ccxx { class CLASS; };

Inline a forward-declaration for the commonc++ class CLASS.

#define CCXX_INVALID_FILE_HANDLE   (-1)

#define CCXX_LENGTHOF (  )     (sizeof(A) / sizeof(A[0]))

Calculates the length of (the number of elements in) the statically-allocated array A.

#define CCXX_OFFSETOF ( S,
 )     ((size_t)(((void *)(&(((S)NULL)->F))) - ((void *)NULL)))

Computes the offset, in bytes, of the field F in the aggregate type S.

#define CCXX_OS_POSIX

Defined if the host system is a POSIX OS.

#define CCXX_STATIC_INITIALIZER

Value:

static void __ccxx_static_init__(void);                               \
  static bool __ccxx_static_init_done__ = (__ccxx_static_init__(), true); \
  static void __ccxx_static_init__(void)
Introduces a static initializer code block.

#define CCXX_STRINGIFY (  )     __CCXX_STRINGIFY__(S)

Evaulates to a string constant representation of S.

#define CCXX_UNIQUE_VARNAME ( pfx,
id,
sfx   )     __CCXX_UNIQUE_VARNAME__(pfx, id, sfx)

#define CCXX_VERSION   0x00000603

Library version identifier.

The three low-order bytes represent the major, minor, and micro version numbers (e.g., 0x00000602 represents version 0.6.2) The remaining byte is reserved for future use.

#define CCXX_VERSION_MAJOR   ((uint_t)((CCXX_VERSION >> 16) & 0xFF))

#define CCXX_VERSION_MICRO   ((uint_t)(CCXX_VERSION & 0xFF))

#define CCXX_VERSION_MINOR   ((uint_t)((CCXX_VERSION >> 8) & 0xFF))

#define CCXX_ZERO (  )     (std::memset(&(V), 0, sizeof(V)))

Zero the memory occupied by the variable V.

#define COMMONCPP_API

#define COMMONCPPDB_API

#define COMMONCPPJVM_API

#define COMMONCPPXML_API

#define NUL   '\0'

The NUL character (ASCII value 0).

#define WNUL   L'\0'

The wide NUL character (ASCII value 0).


Generated on Sat Apr 17 23:03:05 2010 for libcommonc++ by  doxygen 1.5.9