Files
go-astiav/io_interrupter.go
2024-12-11 11:58:23 +01:00

28 lines
399 B
Go

package astiav
//#include "io_interrupter.h"
import "C"
type IOInterrupter struct {
c C.AVIOInterruptCB
i C.int
}
func NewIOInterrupter() *IOInterrupter {
i := &IOInterrupter{}
i.c = C.astiavNewInterruptCallback(&i.i)
return i
}
func (i *IOInterrupter) Interrupt() {
i.i = 1
}
func (i *IOInterrupter) Interrupted() bool {
return i.i == 1
}
func (i *IOInterrupter) Resume() {
i.i = 0
}