t8  1.2.0
t8code is a C library to manage a forest of adaptive space-trees of general element classes in parallel.
t8_cmesh_testcases.h
1 /*
2  This file is part of t8code.
3  t8code is a C library to manage a collection (a forest) of multiple
4  connected adaptive space-trees of general element classes in parallel.
5 
6  Copyright (C) 2015 the developers
7 
8  t8code is free software; you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation; either version 2 of the License, or
11  (at your option) any later version.
12 
13  t8code is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with t8code; if not, write to the Free Software Foundation, Inc.,
20  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 */
22 
23 #ifndef T8_CMESH_TESTCASES_H
24 #define T8_CMESH_TESTCASES_H
25 
26 #include <t8.h>
27 #include <t8_cmesh.h>
28 #include "t8_cmesh_types.h"
31 #include <t8_eclass.h>
32 
33 T8_EXTERN_C_BEGIN ();
34 
40 int t8_get_number_of_comm_only_cmesh_testcases ();
41 
44 int t8_get_number_of_new_hypercube_cmesh_testcases ();
45 
48 int t8_get_number_of_new_empty_cmesh_testcases ();
49 
52 int t8_get_number_of_new_from_class_cmesh_testcases ();
53 
56 int t8_get_number_of_new_hypercube_hybrid_cmesh_testcases ();
57 
60 int t8_get_number_of_new_periodic_cmesh_testcases ();
61 
64 int t8_get_number_of_new_bigmesh_cmesh_testcases ();
65 
68 int t8_get_number_of_new_prism_cake_cmesh_testcases ();
69 
72 int t8_get_number_of_new_disjoint_bricks_cmesh_testcases ();
73 
78 int t8_get_number_of_all_testcases ();
79 
80 /* The functions t8_test_create_*_cmesh create a cmesh of a given type with a unique input depending on the cmesh_id. */
81 
88 t8_cmesh_t t8_test_create_comm_only_cmesh (int cmesh_id);
89 
95 t8_cmesh_t t8_test_create_new_hypercube_cmesh (int cmesh_id);
96 
102 t8_cmesh_t t8_test_create_new_empty_cmesh (int cmesh_id);
103 
109 t8_cmesh_t t8_test_create_new_from_class_cmesh (int cmesh_id);
110 
116 t8_cmesh_t t8_test_create_new_hypercube_hybrid_cmesh (int cmesh_id);
117 
123 t8_cmesh_t t8_test_create_new_periodic_cmesh (int cmesh_id);
124 
130 t8_cmesh_t t8_test_create_new_bigmesh_cmesh (int cmesh_id);
131 
137 t8_cmesh_t t8_test_create_new_prism_cake_cmesh (int cmesh_id);
138 
145 t8_cmesh_t t8_test_create_cmesh (int cmesh_id);
146 
147 T8_EXTERN_C_END ();
148 
149 #endif /* !T8_CMESH_TESTCASES_H */
This structure holds the connectivity data of the coarse mesh.
Definition: t8_cmesh_types.h:83
This is the administrative header file for t8code.
We define the coarse mesh of trees in this file.
TODO: document this file.
TODO: document this file.
We define here the datatypes needed for internal cmesh routines.
We define all possible element classes that occur in hybrid meshes.