1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
/*
* This file is part of the Score-P software (http://www.score-p.org)
*
* Copyright (c) 2009-2012,
* RWTH Aachen University, Germany
*
* Copyright (c) 2009-2012,
* Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany
*
* Copyright (c) 2009-2013,
* Technische Universitaet Dresden, Germany
*
* Copyright (c) 2009-2012,
* University of Oregon, Eugene, USA
*
* Copyright (c) 2009-2012,
* Forschungszentrum Juelich GmbH, Germany
*
* Copyright (c) 2009-2012,
* German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany
*
* Copyright (c) 2009-2012,
* Technische Universitaet Muenchen, Germany
*
* This software may be modified and distributed under the terms of
* a BSD-style license. See the COPYING file in the package base
* directory for details.
*
*/
/** @internal
*
* @brief Common test check functions.
*/
#ifndef OTF2_CHECK_H
#define OTF2_CHECK_H
static bool otf2_DEBUG;
static void
check_pointer( void* pointer,
char* description,
... )
{
va_list va;
va_start( va, description );
if ( pointer == NULL )
{
fprintf( stderr, "==ERROR== " );
vfprintf( stderr, description, va );
fprintf( stderr, "\n" );
exit( EXIT_FAILURE );
}
if ( otf2_DEBUG )
{
printf( "==DEBUG== " );
vfprintf( stdout, description, va );
printf( "\n" );
}
va_end( va );
}
static void
check_status( OTF2_ErrorCode status,
char* description,
... )
{
va_list va;
va_start( va, description );
if ( status != OTF2_SUCCESS )
{
fprintf( stderr, "==ERROR== %s: ", OTF2_Error_GetDescription( status ) );
vfprintf( stderr, description, va );
fprintf( stderr, "\n" );
exit( EXIT_FAILURE );
}
if ( otf2_DEBUG )
{
printf( "==DEBUG== " );
vfprintf( stdout, description, va );
printf( "\n" );
}
va_end( va );
}
static void
check_condition( bool condition,
char* description,
... )
{
va_list va;
va_start( va, description );
if ( !condition )
{
fprintf( stderr, "==ERROR== " );
vfprintf( stderr, description, va );
fprintf( stderr, "\n" );
exit( EXIT_FAILURE );
}
if ( otf2_DEBUG )
{
printf( "==DEBUG== " );
vfprintf( stdout, description, va );
printf( "\n" );
}
va_end( va );
}
#endif /* OTF2_CHECK_H */
|