| 25 | // Helper functions |
| 26 | |
| 27 | void usage() |
| 28 | { |
| 29 | fprintf(stderr, |
| 30 | "usage: etw_list.exe [options]\n" |
| 31 | "options:\n" |
| 32 | " --etl=path List information from an ETL file instead of the local system.\n" |
| 33 | " --provider=filter List providers that match the filter, argument can be used more than once.\n" |
| 34 | " filter can be a provider name or guid, and can include up to one '*'.\n" |
| 35 | " --sort=guid|name Sort providers by specified element.\n" |
| 36 | " --event=filter List events that match the filter, argument can be used more than once.\n" |
| 37 | " filter is of the form Task::opcode, and can include up to one '*'.\n" |
| 38 | " --no_events Don't print event information.\n" |
| 39 | " --no_event_structs Don't print event structures.\n" |
| 40 | " --no_prop_enums Don't print event property enums.\n" |
| 41 | " --no_keywords Don't print keywords.\n" |
| 42 | " --no_levels Don't print levels.\n" |
| 43 | " --no_channels Don't print channels.\n" |
| 44 | "build: %s\n", PRESENT_MON_VERSION); |
| 45 | } |
| 46 | |
| 47 | struct Filter |
| 48 | { |