SPModel: libSPModel/src/SurfaceMeshRegularDecomp.h Source File
VPAC - Computational Software Development
Main | SPModel | StGermain FrameWork |
Main Page | Alphabetical List | Class List | Directories | File List | Class Members | File Members

SurfaceMeshRegularDecomp.h

Go to the documentation of this file.
00001 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00002 **
00003 ** Copyright (C), 2004, Victorian Partnership for Advanced Computing (VPAC) Ltd, 110 Victoria Street, Melbourne, 3053, Australia.
00004 **
00005 ** Authors:
00006 **  Ogar R. Widjaja, Computational Scientist, VPAC.
00007 **  Raquibul Hassan, Software Engineer, VPAC. (raq@vpac.org)
00008 **  Keith Hsuan, Computational Scientist, VPAC (keith@vpac.org)
00009 **  William F. Appelbe, Director, VPAC. (bill@vpac.org)
00010 **  Stevan M. Quenette, Senior Software Engineer, VPAC. (steve@vpac.org)
00011 **  Patrick D. Sunter, Software Engineer, VPAC. (patrick@vpac.org)
00012 **
00013 ** This file may be distributed under the terms of the VPAC Public License
00014 ** as defined by VPAC of Australia and appearing in the file
00015 ** LICENSE.VPL included in the packaging of this file.
00016 **
00017 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00018 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00019 **
00020 */
00031 #ifndef __SPModel_SurfaceMeshRegularDecomp_h__
00032 #define __SPModel_SurfaceMeshRegularDecomp_h__
00033 
00034     #define __SurfaceMeshRegularDecomp\
00035         struct{ __SurfaceMeshDecomp };
00036     struct SurfaceMeshRegularDecomp{ __SurfaceMeshRegularDecomp };
00037 
00038 SurfaceMeshRegularDecomp            *SurfaceMeshRegularDecomp_DefaultNew( Name name );
00039 
00040 SurfaceMeshRegularDecomp            *SurfaceMeshRegularDecomp_New( Name name,
00041                                                                         SurfaceMesh *mesh,
00042                                                                         Dictionary *dictionary );
00043 
00044 SurfaceMeshRegularDecomp    *_SurfaceMeshRegularDecomp_New( SizeT                           _sizeOfSelf,
00045                                     Type                            type,
00046                                     Stg_Class_DeleteFunction*               _delete,
00047                                     Stg_Class_PrintFunction*                _print,
00048                                     Stg_Class_CopyFunction*             _copy, 
00049                                     Stg_Component_DefaultConstructorFunction*   _defaultConstructor,
00050                                     Stg_Component_ConstructFunction*            _construct,
00051                                     Stg_Component_BuildFunction*        _build,
00052                                     Stg_Component_InitialiseFunction*       _initialise,
00053                                     Stg_Component_ExecuteFunction*      _execute,
00054                                     Stg_Component_DestroyFunction*      _destroy,
00055                                     Name                            name,
00056                                     Bool                            initFlag,
00057                                     Dictionary                      *dictionary,
00058                                     SurfaceMesh                     *_mesh,
00059                                     SurfaceMeshDecomp_SyncMeshFunction *_syncMesh,
00060                                     SurfaceMeshDecomp_ComputeHaloNodesFunction *_computeHaloNodes,
00061                                     SurfaceMeshDecomp_AllocateNodesFunction *_allocateNodes );
00062 
00063 void _SurfaceMeshRegularDecomp_Init( SurfaceMeshRegularDecomp *self );
00064 
00065 void _SurfaceMeshRegularDecomp_Print( void *surfaceMeshDecomp, Stream *stream );
00066 
00067 void _SurfaceMeshRegularDecomp_Delete( void *surfaceMeshDecomp );
00068 
00069 void _SurfaceMeshRegularDecomp_Construct( void *surfaceMeshDecomp, Stg_ComponentFactory *cf );
00070 
00071 void _SurfaceMeshRegularDecomp_Build( void *surfaceMeshDecomp, void *data );
00072 
00073 void _SurfaceMeshRegularDecomp_Initialise( void *surfaceMeshDecomp, void *data );
00074 
00075 void _SurfaceMeshRegularDecomp_Execute( void *surfaceMeshDecomp, void *data );
00076 
00077 void _SurfaceMeshRegularDecomp_Destroy( void *surfaceMeshDecomp, void *data );
00078 
00081 void SurfaceMeshRegularDecomp_SyncMesh( SurfaceMeshRegularDecomp *surfaceMeshRegularDecomp, SurfaceMesh *mesh );
00082 
00083 void SurfaceMeshRegularDecomp_ComputeHaloNodes( SurfaceMeshRegularDecomp *surfaceMeshRegularDecomp );
00084 
00085 void SurfaceMeshRegularDecomp_AllocateNodes( _SurfaceMeshDecomp *surfaceMeshRegularDecomp );
00086 
00087 #endif
00088