github.com/amitbet/vnc2video@v0.0.0-20190616012314-9d50b9dab1d9/encoding_raw.go (about)

     1  package vnc2video
     2  
     3  import (
     4  	"image/draw"
     5  )
     6  
     7  type RawEncoding struct {
     8  	Image draw.Image
     9  	//Colors []Color
    10  }
    11  
    12  func (*RawEncoding) Supported(Conn) bool {
    13  	return true
    14  }
    15  
    16  func (*RawEncoding) Reset() error {
    17  	return nil
    18  }
    19  
    20  func (enc *RawEncoding) Write(c Conn, rect *Rectangle) error {
    21  	var err error
    22  
    23  	return err
    24  }
    25  func (enc *RawEncoding) SetTargetImage(img draw.Image) {
    26  	enc.Image = img
    27  }
    28  
    29  // Read implements the Encoding interface.
    30  func (enc *RawEncoding) Read(c Conn, rect *Rectangle) error {
    31  	pf := c.PixelFormat()
    32  
    33  	DecodeRaw(c, &pf, rect, enc.Image)
    34  
    35  	return nil
    36  }
    37  
    38  func (*RawEncoding) Type() EncodingType { return EncRaw }