view src/main/java/com/glavsoft/drawing/Renderer.java @ 34:f70008073a03

add TreeViewer.java
author one
date Tue, 04 Sep 2012 19:02:04 +0900
parents 0c08cdc4b572
children
line wrap: on
line source

// Copyright (C) 2010, 2011 GlavSoft LLC.
// All rights reserved.
//
//-------------------------------------------------------------------------
// This file is part of the TightVNC software.  Please visit our Web site:
//
//                       http://www.tightvnc.com/
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with this program; if not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
//-------------------------------------------------------------------------
//

package com.glavsoft.drawing;

import com.glavsoft.exceptions.TransportException;
import com.glavsoft.rfb.encoding.decoder.FramebufferUpdateRectangle;
import com.glavsoft.transport.Reader;


/**
 * Render bitmap data
 *
 * @author dime @ tightvnc.com
 */
public interface Renderer {

	void copyRect(int srcX, int srcY, FramebufferUpdateRectangle rect);

	int readPixelColor(Reader reader) throws TransportException;

	void fillRect(int i, int tileX, int tileY, int tileWidth, int tileHeight);

	int getBytesPerPixel();

	void drawBytes(byte[] bytes, int x, int y, int width, int height);

	int getPixelColor(byte[] buffer, int i);

	void createCursor(int[] cursorPixels, FramebufferUpdateRectangle rect) throws TransportException;

	void fillRect(int color, FramebufferUpdateRectangle rect);

	int getBytesPerPixelSignificant();

	int readTightPixelColor(Reader reader) throws TransportException;

	int drawTightBytes(byte[] buffer, int i, int x, int y, int width,
			int height);

	void drawBytesWithPalette(byte[] buffer, FramebufferUpdateRectangle rect,
			int[] palette);

	ColorDecoder getColorDecoder();

	void drawUncaliberedRGBLine(byte[] thisRow, int x, int i, int width);

	void drawJpegImage(byte[] bytes, int i, int jpegBufferLength,
			FramebufferUpdateRectangle rect);

	int getCompactPixelColor(byte[] bytes, int index);

	void fillColorBitmapWithColor(int[] decodedBitmap, int decodedOffset,
			int rlength, int color);

	void drawColoredBitmap(int[] decodedBitmap, int tileX, int tileY,
			int tileWidth, int tileHeight);

	int drawCompactBytes(byte[] bytes, int offset, int tileX, int tileY,
			int tileWidth, int tileHeight);

	void decodeCursorPosition(FramebufferUpdateRectangle rect);
	

}