// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.27.1
// 	protoc        v3.6.1
// source: vncmsg.proto

package vncnetwork

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type Status int32

const (
	Status_unset_st Status = 0
	Status_down     Status = 1
	Status_up       Status = 2
)

// Enum value maps for Status.
var (
	Status_name = map[int32]string{
		0: "unset_st",
		1: "down",
		2: "up",
	}
	Status_value = map[string]int32{
		"unset_st": 0,
		"down":     1,
		"up":       2,
	}
)

func (x Status) Enum() *Status {
	p := new(Status)
	*p = x
	return p
}

func (x Status) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (Status) Descriptor() protoreflect.EnumDescriptor {
	return file_vncmsg_proto_enumTypes[0].Descriptor()
}

func (Status) Type() protoreflect.EnumType {
	return &file_vncmsg_proto_enumTypes[0]
}

func (x Status) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use Status.Descriptor instead.
func (Status) EnumDescriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{0}
}

type MouseDataButton int32

const (
	MouseData_unset_btn MouseDataButton = 0
	MouseData_left      MouseDataButton = 1
	MouseData_middle    MouseDataButton = 2
	MouseData_right     MouseDataButton = 3
)

// Enum value maps for MouseDataButton.
var (
	MouseDataButton_name = map[int32]string{
		0: "unset_btn",
		1: "left",
		2: "middle",
		3: "right",
	}
	MouseDataButton_value = map[string]int32{
		"unset_btn": 0,
		"left":      1,
		"middle":    2,
		"right":     3,
	}
)

func (x MouseDataButton) Enum() *MouseDataButton {
	p := new(MouseDataButton)
	*p = x
	return p
}

func (x MouseDataButton) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (MouseDataButton) Descriptor() protoreflect.EnumDescriptor {
	return file_vncmsg_proto_enumTypes[1].Descriptor()
}

func (MouseDataButton) Type() protoreflect.EnumType {
	return &file_vncmsg_proto_enumTypes[1]
}

func (x MouseDataButton) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use MouseDataButton.Descriptor instead.
func (MouseDataButton) EnumDescriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{1, 0}
}

type VncMsgType int32

const (
	VncMsg_capture_req    VncMsgType = 0
	VncMsg_capture_data   VncMsgType = 1
	VncMsg_mouse_event    VncMsgType = 2
	VncMsg_keyboard_event VncMsgType = 3
	VncMsg_set_cursor     VncMsgType = 4
	VncMsg_scroll_event   VncMsgType = 5
)

// Enum value maps for VncMsgType.
var (
	VncMsgType_name = map[int32]string{
		0: "capture_req",
		1: "capture_data",
		2: "mouse_event",
		3: "keyboard_event",
		4: "set_cursor",
		5: "scroll_event",
	}
	VncMsgType_value = map[string]int32{
		"capture_req":    0,
		"capture_data":   1,
		"mouse_event":    2,
		"keyboard_event": 3,
		"set_cursor":     4,
		"scroll_event":   5,
	}
)

func (x VncMsgType) Enum() *VncMsgType {
	p := new(VncMsgType)
	*p = x
	return p
}

func (x VncMsgType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (VncMsgType) Descriptor() protoreflect.EnumDescriptor {
	return file_vncmsg_proto_enumTypes[2].Descriptor()
}

func (VncMsgType) Type() protoreflect.EnumType {
	return &file_vncmsg_proto_enumTypes[2]
}

func (x VncMsgType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use VncMsgType.Descriptor instead.
func (VncMsgType) EnumDescriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{4, 0}
}

type ImageData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Ok     bool   `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"`
	Msg    string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
	Bits   uint32 `protobuf:"varint,3,opt,name=bits,proto3" json:"bits,omitempty"`
	Width  uint32 `protobuf:"varint,4,opt,name=width,proto3" json:"width,omitempty"`
	Height uint32 `protobuf:"varint,5,opt,name=height,proto3" json:"height,omitempty"`
	Data   []byte `protobuf:"bytes,6,opt,name=data,proto3" json:"data,omitempty"`
}

func (x *ImageData) Reset() {
	*x = ImageData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_vncmsg_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ImageData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ImageData) ProtoMessage() {}

func (x *ImageData) ProtoReflect() protoreflect.Message {
	mi := &file_vncmsg_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ImageData.ProtoReflect.Descriptor instead.
func (*ImageData) Descriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{0}
}

func (x *ImageData) GetOk() bool {
	if x != nil {
		return x.Ok
	}
	return false
}

func (x *ImageData) GetMsg() string {
	if x != nil {
		return x.Msg
	}
	return ""
}

func (x *ImageData) GetBits() uint32 {
	if x != nil {
		return x.Bits
	}
	return 0
}

func (x *ImageData) GetWidth() uint32 {
	if x != nil {
		return x.Width
	}
	return 0
}

func (x *ImageData) GetHeight() uint32 {
	if x != nil {
		return x.Height
	}
	return 0
}

func (x *ImageData) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

type MouseData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Type Status          `protobuf:"varint,1,opt,name=type,proto3,enum=vncnetwork.Status" json:"type,omitempty"`
	Btn  MouseDataButton `protobuf:"varint,2,opt,name=btn,proto3,enum=vncnetwork.MouseDataButton" json:"btn,omitempty"`
	X    uint32          `protobuf:"varint,3,opt,name=x,proto3" json:"x,omitempty"`
	Y    uint32          `protobuf:"varint,4,opt,name=y,proto3" json:"y,omitempty"`
}

func (x *MouseData) Reset() {
	*x = MouseData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_vncmsg_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MouseData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MouseData) ProtoMessage() {}

func (x *MouseData) ProtoReflect() protoreflect.Message {
	mi := &file_vncmsg_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MouseData.ProtoReflect.Descriptor instead.
func (*MouseData) Descriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{1}
}

func (x *MouseData) GetType() Status {
	if x != nil {
		return x.Type
	}
	return Status_unset_st
}

func (x *MouseData) GetBtn() MouseDataButton {
	if x != nil {
		return x.Btn
	}
	return MouseData_unset_btn
}

func (x *MouseData) GetX() uint32 {
	if x != nil {
		return x.X
	}
	return 0
}

func (x *MouseData) GetY() uint32 {
	if x != nil {
		return x.Y
	}
	return 0
}

type KeyboardData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Type Status `protobuf:"varint,1,opt,name=type,proto3,enum=vncnetwork.Status" json:"type,omitempty"`
	Key  string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
}

func (x *KeyboardData) Reset() {
	*x = KeyboardData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_vncmsg_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *KeyboardData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*KeyboardData) ProtoMessage() {}

func (x *KeyboardData) ProtoReflect() protoreflect.Message {
	mi := &file_vncmsg_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use KeyboardData.ProtoReflect.Descriptor instead.
func (*KeyboardData) Descriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{2}
}

func (x *KeyboardData) GetType() Status {
	if x != nil {
		return x.Type
	}
	return Status_unset_st
}

func (x *KeyboardData) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

type ScrollData struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
	Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"`
}

func (x *ScrollData) Reset() {
	*x = ScrollData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_vncmsg_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ScrollData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ScrollData) ProtoMessage() {}

func (x *ScrollData) ProtoReflect() protoreflect.Message {
	mi := &file_vncmsg_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ScrollData.ProtoReflect.Descriptor instead.
func (*ScrollData) Descriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{3}
}

func (x *ScrollData) GetX() int32 {
	if x != nil {
		return x.X
	}
	return 0
}

func (x *ScrollData) GetY() int32 {
	if x != nil {
		return x.Y
	}
	return 0
}

type VncMsg struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XType VncMsgType `protobuf:"varint,1,opt,name=_type,json=Type,proto3,enum=vncnetwork.VncMsgType" json:"_type,omitempty"`
	// Types that are assignable to Payload:
	//	*VncMsg_Data
	//	*VncMsg_Mouse
	//	*VncMsg_Keyboard
	//	*VncMsg_ShowCursor
	//	*VncMsg_Scroll
	Payload isVncMsg_Payload `protobuf_oneof:"payload"`
}

func (x *VncMsg) Reset() {
	*x = VncMsg{}
	if protoimpl.UnsafeEnabled {
		mi := &file_vncmsg_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *VncMsg) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*VncMsg) ProtoMessage() {}

func (x *VncMsg) ProtoReflect() protoreflect.Message {
	mi := &file_vncmsg_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use VncMsg.ProtoReflect.Descriptor instead.
func (*VncMsg) Descriptor() ([]byte, []int) {
	return file_vncmsg_proto_rawDescGZIP(), []int{4}
}

func (x *VncMsg) GetXType() VncMsgType {
	if x != nil {
		return x.XType
	}
	return VncMsg_capture_req
}

func (m *VncMsg) GetPayload() isVncMsg_Payload {
	if m != nil {
		return m.Payload
	}
	return nil
}

func (x *VncMsg) GetData() *ImageData {
	if x, ok := x.GetPayload().(*VncMsg_Data); ok {
		return x.Data
	}
	return nil
}

func (x *VncMsg) GetMouse() *MouseData {
	if x, ok := x.GetPayload().(*VncMsg_Mouse); ok {
		return x.Mouse
	}
	return nil
}

func (x *VncMsg) GetKeyboard() *KeyboardData {
	if x, ok := x.GetPayload().(*VncMsg_Keyboard); ok {
		return x.Keyboard
	}
	return nil
}

func (x *VncMsg) GetShowCursor() bool {
	if x, ok := x.GetPayload().(*VncMsg_ShowCursor); ok {
		return x.ShowCursor
	}
	return false
}

func (x *VncMsg) GetScroll() *ScrollData {
	if x, ok := x.GetPayload().(*VncMsg_Scroll); ok {
		return x.Scroll
	}
	return nil
}

type isVncMsg_Payload interface {
	isVncMsg_Payload()
}

type VncMsg_Data struct {
	Data *ImageData `protobuf:"bytes,2,opt,name=data,proto3,oneof"`
}

type VncMsg_Mouse struct {
	Mouse *MouseData `protobuf:"bytes,3,opt,name=mouse,proto3,oneof"`
}

type VncMsg_Keyboard struct {
	Keyboard *KeyboardData `protobuf:"bytes,4,opt,name=keyboard,proto3,oneof"`
}

type VncMsg_ShowCursor struct {
	ShowCursor bool `protobuf:"varint,5,opt,name=show_cursor,json=showCursor,proto3,oneof"`
}

type VncMsg_Scroll struct {
	Scroll *ScrollData `protobuf:"bytes,6,opt,name=scroll,proto3,oneof"`
}

func (*VncMsg_Data) isVncMsg_Payload() {}

func (*VncMsg_Mouse) isVncMsg_Payload() {}

func (*VncMsg_Keyboard) isVncMsg_Payload() {}

func (*VncMsg_ShowCursor) isVncMsg_Payload() {}

func (*VncMsg_Scroll) isVncMsg_Payload() {}

var File_vncmsg_proto protoreflect.FileDescriptor

var file_vncmsg_proto_rawDesc = []byte{
	0x0a, 0x0c, 0x76, 0x6e, 0x63, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a,
	0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x84, 0x01, 0x0a, 0x0a, 0x69,
	0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x62,
	0x69, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12,
	0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
	0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a,
	0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74,
	0x61, 0x22, 0xbb, 0x01, 0x0a, 0x0a, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12,
	0x2e, 0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2f, 0x0a, 0x03, 0x62, 0x74, 0x6e, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x2e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x62, 0x75,
	0x74, 0x74, 0x6f, 0x6e, 0x52, 0x03, 0x62, 0x74, 0x6e, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x01, 0x79, 0x22, 0x38, 0x0a, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12,
	0x0d, 0x0a, 0x09, 0x75, 0x6e, 0x73, 0x65, 0x74, 0x5f, 0x62, 0x74, 0x6e, 0x10, 0x00, 0x12, 0x08,
	0x0a, 0x04, 0x6c, 0x65, 0x66, 0x74, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x6d, 0x69, 0x64, 0x64,
	0x6c, 0x65, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x72, 0x69, 0x67, 0x68, 0x74, 0x10, 0x03, 0x22,
	0x49, 0x0a, 0x0d, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12,
	0x2e, 0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x29, 0x0a, 0x0b, 0x73, 0x63,
	0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x05, 0x52, 0x01, 0x79, 0x22, 0xa2, 0x03, 0x0a, 0x07, 0x76, 0x6e, 0x63, 0x5f, 0x6d, 0x73,
	0x67, 0x12, 0x2d, 0x0a, 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x18, 0x2e, 0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x76, 0x6e,
	0x63, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16,
	0x2e, 0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2e,
	0x0a, 0x05, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
	0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6d, 0x6f, 0x75, 0x73, 0x65,
	0x5f, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x05, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x12, 0x37,
	0x0a, 0x08, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x19, 0x2e, 0x76, 0x6e, 0x63, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6b, 0x65,
	0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6b,
	0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x21, 0x0a, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x5f,
	0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a,
	0x73, 0x68, 0x6f, 0x77, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x63,
	0x72, 0x6f, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x76, 0x6e, 0x63,
	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x64,
	0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x06, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x22, 0x70, 0x0a,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65,
	0x5f, 0x72, 0x65, 0x71, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72,
	0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6d, 0x6f, 0x75, 0x73,
	0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x65, 0x79,
	0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x03, 0x12, 0x0e, 0x0a,
	0x0a, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x10, 0x04, 0x12, 0x10, 0x0a,
	0x0c, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x05, 0x42,
	0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2a, 0x28, 0x0a, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x75, 0x6e, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74,
	0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02,
	0x75, 0x70, 0x10, 0x02, 0x42, 0x0f, 0x5a, 0x0d, 0x2e, 0x2f, 0x3b, 0x76, 0x6e, 0x63, 0x6e, 0x65,
	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_vncmsg_proto_rawDescOnce sync.Once
	file_vncmsg_proto_rawDescData = file_vncmsg_proto_rawDesc
)

func file_vncmsg_proto_rawDescGZIP() []byte {
	file_vncmsg_proto_rawDescOnce.Do(func() {
		file_vncmsg_proto_rawDescData = protoimpl.X.CompressGZIP(file_vncmsg_proto_rawDescData)
	})
	return file_vncmsg_proto_rawDescData
}

var file_vncmsg_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
var file_vncmsg_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_vncmsg_proto_goTypes = []interface{}{
	(Status)(0),          // 0: vncnetwork.status
	(MouseDataButton)(0), // 1: vncnetwork.mouse_data.button
	(VncMsgType)(0),      // 2: vncnetwork.vnc_msg.type
	(*ImageData)(nil),    // 3: vncnetwork.image_data
	(*MouseData)(nil),    // 4: vncnetwork.mouse_data
	(*KeyboardData)(nil), // 5: vncnetwork.keyboard_data
	(*ScrollData)(nil),   // 6: vncnetwork.scroll_data
	(*VncMsg)(nil),       // 7: vncnetwork.vnc_msg
}
var file_vncmsg_proto_depIdxs = []int32{
	0, // 0: vncnetwork.mouse_data.type:type_name -> vncnetwork.status
	1, // 1: vncnetwork.mouse_data.btn:type_name -> vncnetwork.mouse_data.button
	0, // 2: vncnetwork.keyboard_data.type:type_name -> vncnetwork.status
	2, // 3: vncnetwork.vnc_msg._type:type_name -> vncnetwork.vnc_msg.type
	3, // 4: vncnetwork.vnc_msg.data:type_name -> vncnetwork.image_data
	4, // 5: vncnetwork.vnc_msg.mouse:type_name -> vncnetwork.mouse_data
	5, // 6: vncnetwork.vnc_msg.keyboard:type_name -> vncnetwork.keyboard_data
	6, // 7: vncnetwork.vnc_msg.scroll:type_name -> vncnetwork.scroll_data
	8, // [8:8] is the sub-list for method output_type
	8, // [8:8] is the sub-list for method input_type
	8, // [8:8] is the sub-list for extension type_name
	8, // [8:8] is the sub-list for extension extendee
	0, // [0:8] is the sub-list for field type_name
}

func init() { file_vncmsg_proto_init() }
func file_vncmsg_proto_init() {
	if File_vncmsg_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_vncmsg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ImageData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_vncmsg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MouseData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_vncmsg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeyboardData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_vncmsg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ScrollData); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_vncmsg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VncMsg); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_vncmsg_proto_msgTypes[4].OneofWrappers = []interface{}{
		(*VncMsg_Data)(nil),
		(*VncMsg_Mouse)(nil),
		(*VncMsg_Keyboard)(nil),
		(*VncMsg_ShowCursor)(nil),
		(*VncMsg_Scroll)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_vncmsg_proto_rawDesc,
			NumEnums:      3,
			NumMessages:   5,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_vncmsg_proto_goTypes,
		DependencyIndexes: file_vncmsg_proto_depIdxs,
		EnumInfos:         file_vncmsg_proto_enumTypes,
		MessageInfos:      file_vncmsg_proto_msgTypes,
	}.Build()
	File_vncmsg_proto = out.File
	file_vncmsg_proto_rawDesc = nil
	file_vncmsg_proto_goTypes = nil
	file_vncmsg_proto_depIdxs = nil
}
