Main Page | Modules | Data Structures | File List | Data Fields | Globals

F90Vendor.h File Reference

Function declarations for the Chasm array-descriptor library. More...

#include <stdio.h>
#include <CompilerCharacteristics.h>

Go to the source code of this file.

Functions

void * createArrayDesc_F90Vendor (void *desc, void *hidden, int rank, F90_DescType desc_type)
 Creates an array descriptor by copying an existing array and hidden descriptor pair.

int setArrayDesc_F90Vendor (void *desc, void *base_addr, int rank, F90_DescType desc_type, F90_ArrayDataType data_type, unsigned long element_size, const long *lowerBound, const unsigned long *extent, const long *strideMult)
 Sets the elements of a preallocated array descriptor.

int resetArrayDesc_F90Vendor (void *desc, void *base_addr, int rank, const long *lowerBound, const unsigned long *extent, const long *strideMult)
 Resets the elements of a preallocated array descriptor.

int copyToArrayDescAndHidden_F90Vendor (void *src, int rank, F90_DescType desc_type, void *desc, void *hidden)
 Copies an array descriptor to an array and hidden descriptor pair.

int createArrayDescAndHidden_F90Vendor (void *src, int rank, F90_DescType desc_type, void **desc, void **hidden)
 Creates an array and hidden descriptor pair from an existing descriptor.

int freeArrayDescAndHidden_F90Vendor (F90_DescType desc_type, void *desc, void *hidden)
 Frees an array and hidden descriptor pair created by a call to createArrayDescAndHidden_F90Vendor().

void * getArrayBaseAddress_F90Vendor (const void *desc, int rank)
 Returns a pointer to the base address of the array.

unsigned long getArraySize_F90Vendor (const void *desc, int rank)
 Returns the array size (in elements).

long getArrayLowerBound_F90Vendor (const void *desc, int rank, int dim)
 Returns the lower bound for the given dimension.

unsigned long getArrayExtent_F90Vendor (const void *desc, int rank, int dim)
 Returns the extent of the array for the given dimension (in elements).

long getArrayStrideMult_F90Vendor (const void *desc, int rank, int dim)
 Returns the distance between successive elements (in bytes).

unsigned long getArrayDescSize_F90Vendor (int rank)
 Returns the size of an array descriptor (in bytes).

F90_HiddenDescType hiddenArrayDescType_F90Vendor (F90_DescType desc_type)
 Returns the type of hidden descriptor used by the compiler for the given descriptor type.

int verifyArrayDesc_F90Vendor (const void *desc, int rank)
 Verify an array descriptor.

int nullifyArrayDesc_F90Vendor (void *desc, int rank)
 Nullify an array descriptor.

int printArrayDesc_F90Vendor (const void *desc, int rank)
 Prints all fields in the array descriptor.

int equalsArrayDesc_F90Vendor (const void *desc1, const void *desc2, int rank)
 Determines if two descriptors are equal (equivalent).

char * getMangledName_F90Vendor (const char *fun_name, const char *mod_name)
 Returns the symbol name of a module procedure, if the module name is not null, otherwise returns the name of the procedure.

void F90_SetCCFunctions_F90Vendor (F90_CompilerCharacteristics *cc)
 Set CompilerCharacteristics function pointers for a particular compiler.


Detailed Description

Function declarations for the Chasm array-descriptor library.

Fortran 90 (and later) compilers pass array-valued parameters via an array descriptor (sometimes called a dope vector). The Chasm library provides C functions to get and set array-descriptor elements. This file declares the API for the array-descriptor library.

Note that separate global functions are provided for each Fortran compiler with vendor name appended to the generic function name. In this file, F90Vendor is used in place of a specific compiler vendor. A generic interface is available via function pointers in the F90_CompilerCharacteristics struct. These function pointers are set with the F90_SetCompilerCharacteristics() function.


Generated on Mon Sep 29 17:57:06 2003 for Chasm by doxygen 1.3.4