Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

vmblock.h

Go to the documentation of this file.
00001 // Header file of vmblock.cpp
00002 
00003 #ifndef VMBLOCK_H_INCLUDED
00004 #define VMBLOCK_H_INCLUDED
00005 
00006 /***********************************************************************
00007 * symbolic names that let the user choose the kind of dynamical data   *
00008 * structure to be allocated upon calling vmalloc()                     *
00009 ***********************************************************************/
00010 
00011 #define VEKTOR   0                /* for a REAL vector                */
00012 /*.IX{VEKTOR}*/
00013 #define VVEKTOR  1                /* for a vector with elements       */
00014 /*.IX{VVEKTOR}*/
00015                                   /* of given size                    */
00016 #define MATRIX   2                /* for a REAL matrix                */
00017 /*.IX{MATRIX}*/
00018 #define IMATRIX  3                /* for an int matrix                */
00019 /*.IX{IMATRIX}*/
00020 #define MMATRIX  4                /* for a matrix of 4x4 matrices     */
00021 /*.IX{PMATRIX}*/
00022                                   /* (with elements of type `mat4x4') */
00023 #define UMATRIX  5                /* for a lower triangular matrix    */
00024 /*.IX{UMATRIX}*/
00025 #define PMATRIX  6                /* for a matrix of points in R3     */
00026 /*.IX{PMATRIX}*/
00027 
00028 
00029 /***********************************************************************
00030 * operations on a vector matrix list                                   *
00031 ***********************************************************************/
00032 
00033 void *vminit         /* create an empty vector/matrix list ...........*/
00034         (
00035          void
00036         );                      /* address of list ...................*/
00037 
00038 
00039 void *vmalloc        /* create a dynamic vector or matrix ............*/
00040         (
00041          void   *vmblock,       /* address of a vector/matrix list ...*/
00042          int    typ,            /* kind of vector or matrix ..........*/
00043          size_t zeilen,         /* length (vector) or number of rows .*/
00044          size_t spalten         /* number of columns or element size .*/
00045         );                      /* address of the created object .....*/
00046 
00047 
00048 bool  vmcomplete     /* check vector/matrix list for lack of memory ..*/
00049         (
00050          void *vmblock          /* address of list ...................*/
00051         );                      /* no lack of memory? ................*/
00052 
00053 
00054 void vmfree          /* free the memory for a vektor/matrix list .....*/
00055         (
00056          void *vmblock          /* address of list ...................*/
00057         );
00058 
00059 #endif
00060 
00061 /* ------------------------- END vmblock.h -------------------------- */

Generated on Wed Sep 5 12:54:27 2007 for DSACSS Operational Code by  doxygen 1.3.9.1