1#ifndef __verdict_mangle_h 2#define __verdict_mangle_h 3 4/* 5This header file mangles all symbols exported from the verdict library. 6It is included in all files while building the verdict library. 7 8The following command was used to obtain the symbol list: 9 10nm libverdict.a |grep " [TRD] " 11 12This is the way to recreate the whole list: 13 14nm libvtkverdict.dylib |grep " [TRD] " | sed -e 's+^[^_]*_++g' | \ 15 awk '{ print "#define "$1" @VERDICT_MANGLE_PREFIX@_"$1 }' | \ 16 grep -v __fini | grep -v __init | sort > verdict_mangle.h.in 17 18After this, you must manually edit the file and replace any names 19mangled by the C++ compiler with their generic counterparts since 20different C++ compilers have different mangling schemes. 21 22Note that _fini and _init should be excluded because they are not functions 23implemented by the library but are rather created by the linker and 24used when the shared library is loaded/unloaded from an executable. 25 26*/ 27 28/* C++ function and class names */ 29#define v_determinant @VERDICT_MANGLE_PREFIX@_v_determinant 30#define v_interpolate @VERDICT_MANGLE_PREFIX@_v_interpolate 31#define v_vector_rotate @VERDICT_MANGLE_PREFIX@_v_vector_rotate 32#define VerdictVector @VERDICT_MANGLE_PREFIX@_VerdictVector 33#define GaussIntegration @VERDICT_MANGLE_PREFIX@_GaussIntegration 34 35/* C function names */ 36#define v_edge_length @VERDICT_MANGLE_PREFIX@_v_edge_length 37#define v_edge_quality @VERDICT_MANGLE_PREFIX@_v_edge_quality 38#define v_hex_condition @VERDICT_MANGLE_PREFIX@_v_hex_condition 39#define v_hex_diagonal @VERDICT_MANGLE_PREFIX@_v_hex_diagonal 40#define v_hex_dimension @VERDICT_MANGLE_PREFIX@_v_hex_dimension 41#define v_hex_distortion @VERDICT_MANGLE_PREFIX@_v_hex_distortion 42#define v_hex_edge_ratio @VERDICT_MANGLE_PREFIX@_v_hex_edge_ratio 43#define v_hex_jacobian @VERDICT_MANGLE_PREFIX@_v_hex_jacobian 44#define v_hex_max_aspect_frobenius @VERDICT_MANGLE_PREFIX@_v_hex_max_aspect_frobenius 45#define v_hex_max_edge_ratio @VERDICT_MANGLE_PREFIX@_v_hex_max_edge_ratio 46#define v_hex_med_aspect_frobenius @VERDICT_MANGLE_PREFIX@_v_hex_med_aspect_frobenius 47#define v_hex_oddy @VERDICT_MANGLE_PREFIX@_v_hex_oddy 48#define v_hex_quality @VERDICT_MANGLE_PREFIX@_v_hex_quality 49#define v_hex_relative_size_squared @VERDICT_MANGLE_PREFIX@_v_hex_relative_size_squared 50#define v_hex_scaled_jacobian @VERDICT_MANGLE_PREFIX@_v_hex_scaled_jacobian 51#define v_hex_shape @VERDICT_MANGLE_PREFIX@_v_hex_shape 52#define v_hex_shape_and_size @VERDICT_MANGLE_PREFIX@_v_hex_shape_and_size 53#define v_hex_shear @VERDICT_MANGLE_PREFIX@_v_hex_shear 54#define v_hex_shear_and_size @VERDICT_MANGLE_PREFIX@_v_hex_shear_and_size 55#define v_hex_skew @VERDICT_MANGLE_PREFIX@_v_hex_skew 56#define v_hex_stretch @VERDICT_MANGLE_PREFIX@_v_hex_stretch 57#define v_hex_taper @VERDICT_MANGLE_PREFIX@_v_hex_taper 58#define v_hex_volume @VERDICT_MANGLE_PREFIX@_v_hex_volume 59#define v_knife_quality @VERDICT_MANGLE_PREFIX@_v_knife_quality 60#define v_knife_volume @VERDICT_MANGLE_PREFIX@_v_knife_volume 61#define v_pyramid_quality @VERDICT_MANGLE_PREFIX@_v_pyramid_quality 62#define v_pyramid_volume @VERDICT_MANGLE_PREFIX@_v_pyramid_volume 63#define v_quad_area @VERDICT_MANGLE_PREFIX@_v_quad_area 64#define v_quad_aspect_ratio @VERDICT_MANGLE_PREFIX@_v_quad_aspect_ratio 65#define v_quad_condition @VERDICT_MANGLE_PREFIX@_v_quad_condition 66#define v_quad_distortion @VERDICT_MANGLE_PREFIX@_v_quad_distortion 67#define v_quad_edge_ratio @VERDICT_MANGLE_PREFIX@_v_quad_edge_ratio 68#define v_quad_jacobian @VERDICT_MANGLE_PREFIX@_v_quad_jacobian 69#define v_quad_max_aspect_frobenius @VERDICT_MANGLE_PREFIX@_v_quad_max_aspect_frobenius 70#define v_quad_max_edge_ratio @VERDICT_MANGLE_PREFIX@_v_quad_max_edge_ratio 71#define v_quad_maximum_angle @VERDICT_MANGLE_PREFIX@_v_quad_maximum_angle 72#define v_quad_med_aspect_frobenius @VERDICT_MANGLE_PREFIX@_v_quad_med_aspect_frobenius 73#define v_quad_minimum_angle @VERDICT_MANGLE_PREFIX@_v_quad_minimum_angle 74#define v_quad_oddy @VERDICT_MANGLE_PREFIX@_v_quad_oddy 75#define v_quad_quality @VERDICT_MANGLE_PREFIX@_v_quad_quality 76#define v_quad_radius_ratio @VERDICT_MANGLE_PREFIX@_v_quad_radius_ratio 77#define v_quad_relative_size_squared @VERDICT_MANGLE_PREFIX@_v_quad_relative_size_squared 78#define v_quad_scaled_jacobian @VERDICT_MANGLE_PREFIX@_v_quad_scaled_jacobian 79#define v_quad_shape @VERDICT_MANGLE_PREFIX@_v_quad_shape 80#define v_quad_shape_and_size @VERDICT_MANGLE_PREFIX@_v_quad_shape_and_size 81#define v_quad_shear @VERDICT_MANGLE_PREFIX@_v_quad_shear 82#define v_quad_shear_and_size @VERDICT_MANGLE_PREFIX@_v_quad_shear_and_size 83#define v_quad_skew @VERDICT_MANGLE_PREFIX@_v_quad_skew 84#define v_quad_stretch @VERDICT_MANGLE_PREFIX@_v_quad_stretch 85#define v_quad_taper @VERDICT_MANGLE_PREFIX@_v_quad_taper 86#define v_quad_warpage @VERDICT_MANGLE_PREFIX@_v_quad_warpage 87#define v_set_hex_size @VERDICT_MANGLE_PREFIX@_v_set_hex_size 88#define v_set_quad_size @VERDICT_MANGLE_PREFIX@_v_set_quad_size 89#define v_set_tet_size @VERDICT_MANGLE_PREFIX@_v_set_tet_size 90#define v_set_tri_normal_func @VERDICT_MANGLE_PREFIX@_v_set_tri_normal_func 91#define v_set_tri_size @VERDICT_MANGLE_PREFIX@_v_set_tri_size 92#define v_tet_aspect_beta @VERDICT_MANGLE_PREFIX@_v_tet_aspect_beta 93#define v_tet_aspect_frobenius @VERDICT_MANGLE_PREFIX@_v_tet_aspect_frobenius 94#define v_tet_aspect_gamma @VERDICT_MANGLE_PREFIX@_v_tet_aspect_gamma 95#define v_tet_aspect_ratio @VERDICT_MANGLE_PREFIX@_v_tet_aspect_ratio 96#define v_tet_collapse_ratio @VERDICT_MANGLE_PREFIX@_v_tet_collapse_ratio 97#define v_tet_condition @VERDICT_MANGLE_PREFIX@_v_tet_condition 98#define v_tet_distortion @VERDICT_MANGLE_PREFIX@_v_tet_distortion 99#define v_tet_edge_ratio @VERDICT_MANGLE_PREFIX@_v_tet_edge_ratio 100#define v_tet_jacobian @VERDICT_MANGLE_PREFIX@_v_tet_jacobian 101#define v_tet_minimum_angle @VERDICT_MANGLE_PREFIX@_v_tet_minimum_angle 102#define v_tet_quality @VERDICT_MANGLE_PREFIX@_v_tet_quality 103#define v_tet_radius_ratio @VERDICT_MANGLE_PREFIX@_v_tet_radius_ratio 104#define v_tet_relative_size_squared @VERDICT_MANGLE_PREFIX@_v_tet_relative_size_squared 105#define v_tet_scaled_jacobian @VERDICT_MANGLE_PREFIX@_v_tet_scaled_jacobian 106#define v_tet_shape @VERDICT_MANGLE_PREFIX@_v_tet_shape 107#define v_tet_shape_and_size @VERDICT_MANGLE_PREFIX@_v_tet_shape_and_size 108#define v_tet_volume @VERDICT_MANGLE_PREFIX@_v_tet_volume 109#define v_tri_area @VERDICT_MANGLE_PREFIX@_v_tri_area 110#define v_tri_aspect_frobenius @VERDICT_MANGLE_PREFIX@_v_tri_aspect_frobenius 111#define v_tri_aspect_ratio @VERDICT_MANGLE_PREFIX@_v_tri_aspect_ratio 112#define v_tri_condition @VERDICT_MANGLE_PREFIX@_v_tri_condition 113#define v_tri_distortion @VERDICT_MANGLE_PREFIX@_v_tri_distortion 114#define v_tri_edge_ratio @VERDICT_MANGLE_PREFIX@_v_tri_edge_ratio 115#define v_tri_maximum_angle @VERDICT_MANGLE_PREFIX@_v_tri_maximum_angle 116#define v_tri_minimum_angle @VERDICT_MANGLE_PREFIX@_v_tri_minimum_angle 117#define v_tri_quality @VERDICT_MANGLE_PREFIX@_v_tri_quality 118#define v_tri_radius_ratio @VERDICT_MANGLE_PREFIX@_v_tri_radius_ratio 119#define v_tri_relative_size_squared @VERDICT_MANGLE_PREFIX@_v_tri_relative_size_squared 120#define v_tri_scaled_jacobian @VERDICT_MANGLE_PREFIX@_v_tri_scaled_jacobian 121#define v_tri_shape @VERDICT_MANGLE_PREFIX@_v_tri_shape 122#define v_tri_shape_and_size @VERDICT_MANGLE_PREFIX@_v_tri_shape_and_size 123#define v_wedge_quality @VERDICT_MANGLE_PREFIX@_v_wedge_quality 124#define v_wedge_volume @VERDICT_MANGLE_PREFIX@_v_wedge_volume 125#define v_wedge_condition @VERDICT_MANGLE_PREFIX@_wedge_condition 126#define v_wedge_distortion @VERDICT_MANGLE_PREFIX@_wedge_distortion 127#define v_wedge_edge_ratio @VERDICT_MANGLE_PREFIX@_wedge_edge_ratio 128#define v_wedge_jacobian @VERDICT_MANGLE_PREFIX@_wedge_jacobian 129#define v_wedge_max_aspect_frobenius @VERDICT_MANGLE_PREFIX@_wedge_max_aspect_frobenius 130#define v_wedge_max_stretch @VERDICT_MANGLE_PREFIX@_wedge_max_stretch 131#define v_wedge_mean_aspect_frobenius @VERDICT_MANGLE_PREFIX@_wedge_mean_aspect_frobenius 132#define v_wedge_scaled_jacobian @VERDICT_MANGLE_PREFIX@_wedge_scaled_jacobian 133#define v_wedge_shape @VERDICT_MANGLE_PREFIX@_wedge_shape 134 135 136#endif /* __verdict_mangle_h */ 137