|  | /* | 
|  | * Interface for configuring and controlling the state of tracing events. | 
|  | * | 
|  | * Copyright (C) 2012-2016 LluĂs Vilanova <vilanova@ac.upc.edu> | 
|  | * | 
|  | * This work is licensed under the terms of the GNU GPL, version 2 or later. | 
|  | * See the COPYING file in the top-level directory. | 
|  | */ | 
|  |  | 
|  | #ifndef TRACE__EVENT_INTERNAL_H | 
|  | #define TRACE__EVENT_INTERNAL_H | 
|  |  | 
|  | /* | 
|  | * Special value for TraceEvent.vcpu_id field to indicate | 
|  | * that the event is not VCPU specific | 
|  | */ | 
|  | #define TRACE_VCPU_EVENT_NONE ((uint32_t)-1) | 
|  |  | 
|  | /** | 
|  | * TraceEvent: | 
|  | * @id: Unique event identifier. | 
|  | * @name: Event name. | 
|  | * @sstate: Static tracing state. | 
|  | * @dstate: Dynamic tracing state | 
|  | * | 
|  | * Interpretation of @dstate depends on whether the event has the 'vcpu' | 
|  | *  property: | 
|  | * - false: Boolean value indicating whether the event is active. | 
|  | * - true : Integral counting the number of vCPUs that have this event enabled. | 
|  | * | 
|  | * Opaque generic description of a tracing event. | 
|  | */ | 
|  | typedef struct TraceEvent { | 
|  | uint32_t id; | 
|  | const char * name; | 
|  | const bool sstate; | 
|  | uint16_t *dstate; | 
|  | } TraceEvent; | 
|  |  | 
|  | void trace_event_set_state_dynamic_init(TraceEvent *ev, bool state); | 
|  |  | 
|  | #endif /* TRACE__EVENT_INTERNAL_H */ |