p4est  1.0
src/p4est_geometry.h
Go to the documentation of this file.
00001 /*
00002   This file is part of p4est.
00003   p4est is a C library to manage a collection (a forest) of multiple
00004   connected adaptive quadtrees or octrees in parallel.
00005 
00006   Copyright (C) 2010 The University of Texas System
00007   Written by Carsten Burstedde, Lucas C. Wilcox, and Tobin Isaac
00008 
00009   p4est is free software; you can redistribute it and/or modify
00010   it under the terms of the GNU General Public License as published by
00011   the Free Software Foundation; either version 2 of the License, or
00012   (at your option) any later version.
00013 
00014   p4est is distributed in the hope that it will be useful,
00015   but WITHOUT ANY WARRANTY; without even the implied warranty of
00016   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017   GNU General Public License for more details.
00018 
00019   You should have received a copy of the GNU General Public License
00020   along with p4est; if not, write to the Free Software Foundation, Inc.,
00021   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00022 */
00023 
00030 #ifndef P4EST_GEOMETRY_H
00031 #define P4EST_GEOMETRY_H
00032 
00033 #include <p4est_base.h>
00034 
00035 SC_EXTERN_C_BEGIN;
00036 
00037 typedef struct p4est_geometry p4est_geometry_t;
00038 
00046 typedef void        (*p4est_geometry_X_t) (p4est_geometry_t * geom,
00047                                            p4est_topidx_t which_tree,
00048                                            const double abc[3],
00049                                            double xyz[3]);
00050 
00054 struct p4est_geometry
00055 {
00056   const char         *name;     
00057   void               *user;     
00058   p4est_geometry_X_t  X;        
00059 };
00060 
00065 p4est_geometry_t   *p4est_geometry_new_identity (void);
00066 
00067 SC_EXTERN_C_END;
00068 
00069 #endif /* !P4EST_GEOMETRY_H */
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines