1use crate::protos::{
2 InternedData, TracePacket, TrackDescriptor, TrackEvent,
3 trace_packet::OptionalTrustedPacketSequenceId,
4};
5
6pub fn new_interned_data() -> InternedData {
7 InternedData {
8 event_categories: vec![],
9 event_names: vec![],
10 debug_annotation_names: vec![],
11 debug_annotation_value_type_names: vec![],
12 source_locations: vec![],
13 unsymbolized_source_locations: vec![],
14 log_message_body: vec![],
15 histogram_names: vec![],
16 build_ids: vec![],
17 mapping_paths: vec![],
18 source_paths: vec![],
19 function_names: vec![],
20 profiled_frame_symbols: vec![],
21 mappings: vec![],
22 frames: vec![],
23 callstacks: vec![],
24 vulkan_memory_keys: vec![],
25 graphics_contexts: vec![],
26 gpu_specifications: vec![],
27 kernel_symbols: vec![],
28 debug_annotation_string_values: vec![],
29 packet_context: vec![],
30 v8_js_function_name: vec![],
31 v8_js_function: vec![],
32 v8_js_script: vec![],
33 v8_wasm_script: vec![],
34 v8_isolate: vec![],
35 protolog_string_args: vec![],
36 protolog_stacktrace: vec![],
37 viewcapture_package_name: vec![],
38 viewcapture_window_name: vec![],
39 viewcapture_view_id: vec![],
40 viewcapture_class_name: vec![],
41 }
42}
43
44pub fn new_trace_packet() -> TracePacket {
45 TracePacket {
46 timestamp: None,
47 timestamp_clock_id: None,
48 trusted_pid: None,
49 interned_data: None,
50 sequence_flags: Some(2),
51 incremental_state_cleared: None,
52 trace_packet_defaults: None,
53 previous_packet_dropped: None,
54 first_packet_on_sequence: None,
55 machine_id: None,
56 data: None,
57 optional_trusted_uid: None,
58 optional_trusted_packet_sequence_id: Some(
59 OptionalTrustedPacketSequenceId::TrustedPacketSequenceId(1),
60 ),
61 }
62}
63
64pub fn new_track_descriptor(uuid: u64) -> TrackDescriptor {
65 TrackDescriptor {
66 uuid: Some(uuid),
67 parent_uuid: None,
68 process: None,
69 chrome_process: None,
70 thread: None,
71 chrome_thread: None,
72 counter: None,
73 disallow_merging_with_system_tracks: None,
74 static_or_dynamic_name: None,
75 }
76}
77
78#[allow(deprecated)]
79pub fn new_track_event() -> TrackEvent {
80 TrackEvent {
81 category_iids: vec![],
82 categories: vec![],
83 r#type: None,
84 track_uuid: None,
85 extra_counter_track_uuids: vec![],
86 extra_counter_values: vec![],
87 extra_double_counter_track_uuids: vec![],
88 extra_double_counter_values: vec![],
89 flow_ids_old: vec![],
90 flow_ids: vec![],
91 terminating_flow_ids_old: vec![],
92 terminating_flow_ids: vec![],
93 debug_annotations: vec![],
94 task_execution: None,
95 log_message: None,
96 cc_scheduler_state: None,
97 chrome_user_event: None,
98 chrome_keyed_service: None,
99 chrome_legacy_ipc: None,
100 chrome_histogram_sample: None,
101 chrome_latency_info: None,
102 chrome_frame_reporter: None,
103 chrome_application_state_info: None,
104 chrome_renderer_scheduler_state: None,
105 chrome_window_handle_event_info: None,
106 chrome_content_settings_event_info: None,
107 chrome_active_processes: None,
108 screenshot: None,
109 pixel_modem_event_insight: None,
110 chrome_message_pump: None,
111 chrome_mojo_event_info: None,
112 legacy_event: None,
113 name_field: None,
114 counter_value_field: None,
115 source_location_field: None,
116 timestamp: None,
117 thread_time: None,
118 thread_instruction_count: None,
119 }
120}