/**
* @file op_abi.h
* This file contains a simple C interface to the ABI-describing functionality,
* the majority of which is implemented in C++. this is the file which is
* intended for use in files outside the /libabi directory.
*
* @remark Copyright 2002 OProfile authors
* @remark Read the file COPYING
*
* @author Graydon Hoare
* @author Philippe Elie
*/
#ifndef OP_ABI_H
#define OP_ABI_H
struct op_abi_entry {
char const * name;
/// offset or size of the named entry
int offset;
};
#ifdef __cplusplus
extern "C" {
#endif
/// return array is terminated by a NULL entry in name field
struct op_abi_entry const * get_abi(void);
/// return non zero if the abi is little endian
int op_little_endian(void);
/**
* Write current abi to file.
* return 1 on success, 0 on failure
*/
int op_write_abi_to_file(char const * abi_file);
#ifdef __cplusplus
}
#endif
#endif // OP_ABI_H