2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 1 /*
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 2 +-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 3 | Project : STR2IND
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 4 | Modul : ind2str.h
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 5 +-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 6 | Copyright 2002 Texas Instruments Berlin, AG
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 7 | All rights reserved.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 8 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 9 | This file is confidential and a trade secret of Texas
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 10 | Instruments Berlin, AG
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 11 | The receipt of or possession of this file does not convey
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 12 | any rights to reproduce or disclose its contents or to
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 13 | manufacture, use, or sell anything it may describe, in
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 14 | whole, or in part, without the specific written consent of
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 15 | Texas Instruments Berlin, AG.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 16 +-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 17 | Purpose : This Module defines interface of the ind2str library. The
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 18 | main purpose of this library is the translation of an trace
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 19 | index to a complete trace string.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 20 +-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 21 */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 22
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 23 #ifndef IND2STR_H
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 24 #define IND2STR_H
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 25
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 26
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 27 /*==== CONSTANTS ==================================================*/
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 28 #define IND2STR_OK 0
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 29 #define IND2STR_FILE_NOT_FOUND -1
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 30 #define IND2STR_WRONGFILEFORMAT -2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 31 #define IND2STR_INDEXOUTOFBOUNDS -3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 32 #define IND2STR_PARAMCOUNTOUTOFBOUNDS -4
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 33 #define IND2STR_NOTINITIALISED -5
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 34 #define IND2STR_ACCESSVIOLATION -6
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 35 #define IND2STR_INTERNAL_ERROR -7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 36
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 37 #ifdef __cplusplus
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 38 extern "C" {
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 39 #endif
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 40
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 41
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 42
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 43 /*-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 44 | Function : ind2str_Init()
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 45 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 46 | Description : Initialises the library: opens the file containing the trace
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 47 | mapping table, build the internal representation , closes the
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 48 | the file after reading.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 49 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 50 | Parameters : tableFile - the mapping table file name
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 51 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 52 | Return : success or failure
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 53 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 54 */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 55 signed char ind2str_Init(char * tableFile);
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 56
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 57
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 58 /*-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 59 | Function : ind2str_Exit()
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 60 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 61 | Description : De-initialises the library: closes the file containing the
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 62 | trace mapping table, frees allocated memory.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 63 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 64 | Parameters :
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 65 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 66 | Return :
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 67 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 68 */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 69 void ind2str_Exit(void);
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 70
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 71
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 72 /*-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 73 | Function : ind2str_Version()
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 74 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 75 | Description : Returns the version (build date) of the table. The table must
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 76 | be initialized before.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 77 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 78 | Parameters :
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 79 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 80 | Return : The version of the table or 0.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 81 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 82 */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 83 unsigned long ind2str_Version(void);
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 84
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 85
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 86 /*-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 87 | Function : ind2str_VersionNoInit()
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 88 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 89 | Description : Returns the version (build date) of the table. The table does
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 90 | not need to be initialized before.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 91 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 92 | Parameters : fileName - the name of the file, that contains a table
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 93 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 94 | Return : The version of the table or 0.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 95 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 96 */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 97 unsigned long ind2str_VersionNoInit(char * fileName);
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 98
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 99
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 100 /*-----------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 101 | Function : ind2str
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 102 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 103 | Description : Transforms a trace index string into a trace string, according
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 104 | to the trace mapping table.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 105 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 106 | Parameters : dst - destination string
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 107 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 108 | src - source string
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 109 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 110 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 111 | Return : The number of characters printed to the destination string.
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 112 |
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 113 +------------------------------------------------------------------------------
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 114 */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 115 int ind2str(char * dst, char * src);
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 116
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 117
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 118 #ifdef __cplusplus
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 119 }
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 120 #endif
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 121
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 122
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 123 #endif /* IND2STR_H */
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
+ − 124