*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA 02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
*/
/* print.c
#include <lttv/filter.h>
#endif
#include <lttv/print.h>
-#include <ltt/ltt.h>
-#include <ltt/event.h>
-#include <ltt/trace.h>
#include <stdio.h>
#include <ctype.h>
-#include <ltt/ltt-private.h>
#include <babeltrace/ctf/events.h>
#include <string.h>
#include <inttypes.h>
int getProcessInfosFromEvent(LttvEvent *event, GString* processInfos)
{
int pid=0, tid=0, ppid=0;
- char *procname;
- struct definition *scope;
+ const char *procname;
+
unsigned long timestamp;
int ret = 0;
}
#endif
if (noError||1) {
- g_string_append_printf(processInfos, "%u, %u, %s, %u", pid, tid, procname, ppid);
+ g_string_append_printf(processInfos, "%u, %u, %s, %u. %s, %s", pid, tid, procname, ppid, g_quark_to_string(process->state->t), g_quark_to_string(process->state->s));
}
else {
ret = -1;
return 0;
}
-int getFields(struct bt_ctf_event *ctf_event, struct definition const *fields, GString* fieldsStr)
+int getFields(struct bt_ctf_event *ctf_event, struct bt_definition const *fields, GString* fieldsStr)
{
- enum ctf_type_id fieldType = bt_ctf_field_type(fields);
+ enum ctf_type_id fieldType = bt_ctf_field_type(bt_ctf_get_decl_from_def(fields));
int ret = 0, isSigned = -1, len = 0, i = 0;
- struct definition *index_def;
+ const struct bt_definition *index_def;
switch (fieldType) {
case CTF_TYPE_INTEGER:
- isSigned = bt_ctf_get_int_signedness(fields);
+ isSigned = bt_ctf_get_int_signedness(bt_ctf_get_decl_from_def(fields));
if (isSigned == 1) {
g_string_append_printf(fieldsStr, "%lu", bt_ctf_get_int64(fields));
}
else if (isSigned == 0) {
- g_string_append_printf(fieldsStr, "%llu", bt_ctf_get_uint64(fields));
+ g_string_append_printf(fieldsStr, "%" PRIu64 , bt_ctf_get_uint64(fields));
}
break;
case CTF_TYPE_STRING:
case CTF_TYPE_ARRAY:
g_string_append_printf(fieldsStr, "[ ");
- len = bt_ctf_get_array_len(fields);
- if (index_def = bt_ctf_get_index(ctf_event, fields, i)) {
+ len = bt_ctf_get_array_len(bt_ctf_get_decl_from_def(fields));
+ if ((index_def = bt_ctf_get_index(ctf_event, fields, i))) {
for (i = 0; i < len; i++) {
if (i > 0) {
g_string_append_printf(fieldsStr, ", ");
}
- bt_ctf_field_type(bt_ctf_get_index(ctf_event, fields, i));
+ //bt_ctf_field_type( bt_ctf_get_index(ctf_event, fields, i));
g_string_append_printf(fieldsStr, " ");
- g_string_append_printf(fieldsStr, "[%d] = ");
+ g_string_append_printf(fieldsStr, "[%d] = ",i);
getFields(ctf_event, bt_ctf_get_index(ctf_event, fields, i), fieldsStr);
}
}
break;
case CTF_TYPE_UNKNOWN:
+ g_string_append_printf(fieldsStr, "TYPE UNKNOWN");
default:
+ g_string_append_printf(fieldsStr, "TYPE UNIMP %i",fieldType );
break;
}
return ret;
int getFieldsFromEvent(struct bt_ctf_event *ctf_event, GString* fields, gboolean field_names)
{
- struct definition const * const *list = NULL;
+ struct bt_definition const * const *list = NULL;
unsigned int count;
- int i = 0, j = 0, ret = 0;
+ int i = 0, ret = 0;
gboolean noError = TRUE;
- struct definition *scope;
+ const struct bt_definition *scope;
scope = bt_ctf_get_top_level_scope(ctf_event, BT_EVENT_FIELDS);
if (!scope) {
g_string_set_size(a_string,0);
if(long_version){
- g_string_append_printf(a_string, "%llu %s: ",
+ g_string_append_printf(a_string,"%" PRIu64 " %s: ",
bt_ctf_get_timestamp(event->bt_event),
bt_ctf_event_name(event->bt_event));
}
ltt_trace_name(ltt_tracefile_get_trace(tfs->parent.tf))),
g_quark_to_string(ltt_tracefile_name(tfs->parent.tf)), cpu);
/* Print the process id and the state/interrupt type of the process */
- g_string_append_printf(s,", %u, %u, %s, %s, %u, 0x%" PRIx64", %s",
+ g_string_append_printf(s,", %u, %u, %s, %u, 0x%" PRIx64", %s",
process->pid,
process->tgid,
g_quark_to_string(process->name),
- g_quark_to_string(process->brand),
process->ppid,
process->current_function,
g_quark_to_string(process->state->t));