vtf-logo

shells/fem/sedge.h

Go to the documentation of this file.
00001 /* -*- C -*- */
00002 /*
00003  * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00004  *
00005  *                                   Fehmi Cirak
00006  *                        California Institute of Technology
00007  *                           (C) 2003 All Rights Reserved
00008  *
00009  * <LicenseText>
00010  *
00011  * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00012 */
00013 #ifndef SEDGE_H
00014 #define SEDGE_H
00015 
00016 #if defined(HAVE_CONFIG_H)
00017 /* autoconf */
00018 #include <config.h>
00019 #elif defined(BLD_PROCEDURE)
00020 /* build procedure */
00021 #include <portinfo.h>
00022 #endif
00023 
00024 
00025 #ifdef __cplusplus
00026 namespace shells {
00027 #define DECLARE_EXTERN extern "C"
00028 #else
00029 #define DECLARE_EXTERN extern
00030 #endif
00031 
00032     struct SVertexS;
00033     struct SElementS;
00034 
00035     typedef struct SEdgeS {
00036         struct SVertexS    *m_a;      /* first end vertex */
00037         struct SVertexS    *m_b;      /* second end vertex */
00038         
00039         struct SElementS   *m_t;      /* first incident face */
00040         struct SElementS   *m_t2;     /* second incident face */
00041         
00042         struct SVertexS    *m_a2;     /* first end vertex belonging to m_t2 */
00043         struct SVertexS    *m_b2;     /* second end vertex belonging to m_t2 */
00044     } SEdge;
00045     
00046     
00047     DECLARE_EXTERN SEdge *createSEdge (struct SVertexS *, struct SVertexS *, 
00048                                        struct SElementS *);
00049     DECLARE_EXTERN void deleteSEdge (SEdge *edge);
00050 
00051     static int checkIfSEdgeContainsSElement(SEdge *edge, 
00052                                             struct SElementS *element) 
00053         {
00054             if (edge->m_t==element) return 1;
00055             if (edge->m_t2==element) return 2;
00056             
00057             return 0;
00058         }
00059 
00060 
00061 #ifdef __cplusplus
00062 }
00063 #endif
00064 #undef DECLARE_EXTERN
00065 
00066 #endif 

Generated on Fri Aug 24 13:00:24 2007 for SFC Thin-Shell Finite Element Solver by  doxygen 1.4.7