aboutsummaryrefslogtreecommitdiff
path: root/vendor/gioui.org/io/profile/profile.go
blob: 24bf52b35653b8b3ec62a5069157ee72c7b16a30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// SPDX-License-Identifier: Unlicense OR MIT

// Package profiles provides access to rendering
// profiles.
package profile

import (
	"gioui.org/internal/opconst"
	"gioui.org/io/event"
	"gioui.org/op"
)

// Op registers a handler for receiving
// Events.
type Op struct {
	Tag event.Tag
}

// Event contains profile data from a single
// rendered frame.
type Event struct {
	// Timings. Very likely to change.
	Timings string
}

func (p Op) Add(o *op.Ops) {
	data := o.Write(opconst.TypeProfileLen, p.Tag)
	data[0] = byte(opconst.TypeProfile)
}

func (p Event) ImplementsEvent() {}