mirror of
https://github.com/rwinkhart/go-winio.git
synced 2026-08-28 12:56:33 -04:00
24 lines
623 B
Go
24 lines
623 B
Go
package etw
|
|
|
|
import (
|
|
"bytes"
|
|
"encoding/binary"
|
|
)
|
|
|
|
// EventData maintains a buffer which builds up the data for an ETW event. It
|
|
// needs to be paired with EventMetadata which describes the event.
|
|
type EventData struct {
|
|
buffer bytes.Buffer
|
|
}
|
|
|
|
// NewEventData returns a new EventData with an empty buffer.
|
|
func NewEventData() *EventData {
|
|
return &EventData{}
|
|
}
|
|
|
|
// AddString appends the data for a string to the end of the buffer.
|
|
func (ed *EventData) AddString(data string) {
|
|
binary.Write(&ed.buffer, binary.LittleEndian, []byte(data))
|
|
binary.Write(&ed.buffer, binary.LittleEndian, byte(0))
|
|
}
|