OpenMPI  0.1.1
backtrace.h
1 /*
2  * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
3  * University Research and Technology
4  * Corporation. All rights reserved.
5  * Copyright (c) 2004-2005 The University of Tennessee and The University
6  * of Tennessee Research Foundation. All rights
7  * reserved.
8  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9  * University of Stuttgart. All rights reserved.
10  * Copyright (c) 2004-2006 The Regents of the University of California.
11  * All rights reserved.
12  * $COPYRIGHT$
13  *
14  * Additional copyrights may follow
15  *
16  * $HEADER$
17  */
18 
19 #ifndef OPAL_MCA_BACKTRACE_BACKTRACE_H
20 #define OPAL_MCA_BACKTRACE_BACKTRACE_H
21 
22 #include "opal_config.h"
23 
24 #include "opal/mca/mca.h"
25 #include "opal/mca/base/base.h"
26 
27 BEGIN_C_DECLS
28 
29 /*
30  * Most of this file is just for ompi_info. There are two interface
31  * functions, both of which are called directly. The joy of link-time
32  * components.
33  */
34 
35 
36 /*
37  * print back trace to FILE file
38  *
39  * \note some attempts made to be signal safe.
40  */
41 OPAL_DECLSPEC void opal_backtrace_print(FILE *file);
42 
43 /*
44  * Return back trace in buffer. buffer will be allocated by the
45  * backtrace component, but should be free'ed by the caller.
46  *
47  * \note Probably bad to call this from a signal handler.
48  *
49  */
50 OPAL_DECLSPEC int opal_backtrace_buffer(char*** messages, int *len);
51 
52 
53 /**
54  * Structure for backtrace components.
55  */
57  /** MCA base component */
59  /** MCA base data */
61 };
62 /**
63  * Convenience typedef
64  */
66 
67 /*
68  * Macro for use in components that are of type backtrace
69  */
70 #define OPAL_BACKTRACE_BASE_VERSION_2_0_0 \
71  MCA_BASE_VERSION_2_0_0, \
72  "backtrace", 2, 0, 0
73 
74 END_C_DECLS
75 
76 #endif /* OPAL_MCA_BACKTRACE_BACKTRACE_H */
Common type for all MCA components.
Definition: mca.h:250
mca_base_component_t backtracec_version
MCA base component.
Definition: backtrace.h:58
Top-level interface for all MCA components.
Meta data for MCA v2.0.0 components.
Definition: mca.h:309
Structure for backtrace components.
Definition: backtrace.h:56
mca_base_component_data_t backtracec_data
MCA base data.
Definition: backtrace.h:60