-/*
- * parser.h: Generate helper declarations and functions to trace events
- * from an event description file.
- *
- * Copyright (C) 2005, Mathieu Desnoyers
- * Copyright (C) 2002, Xianxiu Yang
- * Copyright (C) 2002, Michel Dagenais
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License Version 2.1 as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
#ifndef PARSER_H
#define PARSER_H
char *getName(parse_file_t *in);
int getNumber(parse_file_t *in);
char *getEqual(parse_file_t *in);
-char seekNextChar(parse_file_t *in);
+int seekNextChar(parse_file_t *in);
void skipComment(parse_file_t * in);
void skipEOL(parse_file_t * in);
sequence_t labels_description;
int already_printed;
sequence_t fields; // for structure, array and sequence (field_t type)
- int custom_write; /* Should we use a custom write function ? */
+ int custom_write; /* Should we use a custom write function ? */
+ int network; /* Is the type a in network byte order ? */
} type_descriptor_t;
sequence_t fields; /* event fields */
int per_trace; /* Is the event able to be logged to a specific trace ? */
int per_tracefile; /* Must we log this event in a specific tracefile ? */
+ int param_buffer; /* For userspace tracing : takes a buffer as parameter? */
+ int no_instrument_function;
} event_t;
typedef struct _facility {
sequence_t unnamed_types; //FIXME : remove
table_t named_types;
unsigned int checksum;
+ int user; /* Is this a userspace facility ? */
} facility_t;
int getSizeindex(unsigned int value);
char * getNameAttribute(parse_file_t *in);
char * getFormatAttribute(parse_file_t *in);
int getSizeAttribute(parse_file_t *in);
-int getValueAttribute(parse_file_t *in);
-char * getValueStrAttribute(parse_file_t *in);
+int getValueAttribute(parse_file_t *in, long long *value);
char * getDescription(parse_file_t *in);