XenevaOS
Loading...
Searching...
No Matches
Classes | Typedefs | Functions
chitralekha.h File Reference
#include <stdint.h>
#include <_xeneva.h>
Include dependency graph for chitralekha.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _ChCanvas_
 

Typedefs

typedef struct _ChCanvas_ ChCanvas
 

Functions

XE_LIB int ChPrintLibName ()
 
XE_LIB ChCanvasChCreateCanvas (int reqW, int reqH)
 ChCreateCanvas – creates a new canvas.
 
XE_LIB int ChAllocateBuffer (ChCanvas *canvas)
 ChAllocateBuffer – allocates buffers for graphics.
 
XE_LIB int ChDeAllocateBuffer (ChCanvas *canvas)
 ChDeAllocateBuffer – de-allocates buffers from canvas.
 
XE_LIB void ChCanvasScreenUpdate (ChCanvas *canvas, int x, int y, int w, int h)
 ChCanvasScreenUpdate – updates screen buffer with canvas buffer contents.
 
XE_LIB void ChDrawPixel (ChCanvas *canvas, int x, int y, uint32_t color)
 ChDrawPixel – draws a pixel to canvas buffer.
 
XE_LIB void ChDrawPixelRAW (ChCanvas *canvas, int x, int y, uint32_t color)
 ChDrawPixelRAW – draws a pixel to canvas buffer.
 
XE_LIB void ChDrawPixelAA (ChCanvas *canv, int x, int y, uint32_t color, double alpha)
 ChDrawPixelAA – draw anti-aliased pixel.
 
XE_LIB uint32_t ChGetPixel (ChCanvas *canvas, int x, int y)
 ChGetPixel – retuns a pixel from canvas.
 
XE_LIB void ChCanvasFill (ChCanvas *canvas, int w, int h, uint32_t color)
 ChCanvasFill – fill the canvas with specific color.
 
XE_LIB float ChGetScreenDiagonal (ChCanvas *canv)
 ChGetScreenDiagonal – get screen diagonal using pythagorean theorem in centimetre.
 
XE_LIB float ChGetScreenDPI (ChCanvas *canv)
 ChGetScreenDPI – converts screen resolution into dot-per-inch in centimetre.
 
XE_LIB int ChGetScreenAspectRatio (ChCanvas *canv)
 ChGetScreenAspectRatio – returns the aspect ration of the screen.
 

Typedef Documentation

◆ ChCanvas

typedef struct _ChCanvas_ ChCanvas

BSD 2-Clause License

Copyright (c) 2022-2023, Manas Kamal Choudhury All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Function Documentation

◆ ChAllocateBuffer()

XE_LIB int ChAllocateBuffer ( ChCanvas canvas)

ChAllocateBuffer – allocates buffers for graphics.

Parameters
canvas– Pointer to canvas

◆ ChCanvasFill()

XE_LIB void ChCanvasFill ( ChCanvas canvas,
int  w,
int  h,
uint32_t  color 
)

ChCanvasFill – fill the canvas with specific color.

Parameters
canvas– pointer to canvas structure
w– width to fill
h– height to fill
color– color to be filled with

◆ ChCanvasScreenUpdate()

XE_LIB void ChCanvasScreenUpdate ( ChCanvas canvas,
int  _x,
int  _y,
int  _w,
int  _h 
)

ChCanvasScreenUpdate – updates screen buffer with canvas buffer contents.

Parameters
canvas– Pointer to canvas
x– x position
y– y position
w– width of the canvas
h– height of the canvas

◆ ChCreateCanvas()

XE_LIB ChCanvas * ChCreateCanvas ( int  reqW,
int  reqH 
)

ChCreateCanvas – creates a new canvas.

Parameters
reqW– requested width of the canvas
reqH– requested height of the canvas

◆ ChDeAllocateBuffer()

XE_LIB int ChDeAllocateBuffer ( ChCanvas canvas)

ChDeAllocateBuffer – de-allocates buffers from canvas.

Parameters
canvas– pointer to canvas structure

◆ ChDrawPixel()

XE_LIB void ChDrawPixel ( ChCanvas canvas,
int  x,
int  y,
uint32_t  color 
)

ChDrawPixel – draws a pixel to canvas buffer.

Parameters
canvas– pointer to canvas
x– x position
y– y position
color– color of the pixel

◆ ChDrawPixelAA()

XE_LIB void ChDrawPixelAA ( ChCanvas canv,
int  x,
int  y,
uint32_t  color,
double  alpha 
)

ChDrawPixelAA – draw anti-aliased pixel.

Parameters
canv- Pointer to canvas
x– X location relative to window
y– Y location relative to window
color– Color of the pixel
alpha– Alpha value

◆ ChDrawPixelRAW()

XE_LIB void ChDrawPixelRAW ( ChCanvas canvas,
int  x,
int  y,
uint32_t  color 
)

ChDrawPixelRAW – draws a pixel to canvas buffer.

Parameters
canvas– pointer to canvas
x– x position
y– y position
color– color of the pixel

◆ ChGetPixel()

XE_LIB uint32_t ChGetPixel ( ChCanvas canvas,
int  x,
int  y 
)

ChGetPixel – retuns a pixel from canvas.

Parameters
canvas– Pointer to canvas structure
x– x position
y– y position

◆ ChGetScreenAspectRatio()

XE_LIB int ChGetScreenAspectRatio ( ChCanvas canv)

ChGetScreenAspectRatio – returns the aspect ration of the screen.

Parameters
canv– Pointer to canvas

◆ ChGetScreenDiagonal()

XE_LIB float ChGetScreenDiagonal ( ChCanvas canv)

ChGetScreenDiagonal – get screen diagonal using pythagorean theorem in centimetre.

Parameters
canv– Pointer to canvas

◆ ChGetScreenDPI()

XE_LIB float ChGetScreenDPI ( ChCanvas canv)

ChGetScreenDPI – converts screen resolution into dot-per-inch in centimetre.

Parameters
canv– Pointer to canvas

◆ ChPrintLibName()

XE_LIB int ChPrintLibName ( )