backend/internal/system/system.go

28 lines
463 B
Go

package system
import "io"
import "image"
import "git.tebibyte.media/tomo/tomo/canvas"
type System struct {
link BackendLink
}
type BackendLink interface {
NewTexture (image.Image) canvas.TextureCloser
NewCanvas (image.Rectangle) canvas.Canvas
NewSurface (image.Rectangle) SurfaceLink
}
type SurfaceLink interface {
io.Closer
GetSurface () any
SetSize (image.Rectangle)
}
func New (link BackendLink) *System {
return &System {
link: link,
}
}