New bitmap method SetRGBConversionFunction which can be used to
[tangerine.git] / workbench / libs / cgxvideo / cgxvideo_intern.h
blob0f4a42027af97c9041442bba487ad73b21a2785f
1 #ifndef CGXVIDEO_INTERN_H
2 #define CGXVIDEO_INTERN_H
4 #ifndef EXEC_LIBRARIES_H
5 # include <exec/libraries.h>
6 #endif
8 #ifndef EXEC_LISTS_H
9 # include <exec/lists.h>
10 #endif
12 #ifndef DOS_BPTR_H
13 # include <dos/bptr.h>
14 #endif
16 #ifndef AROS_LIBCALL_H
17 # include <aros/libcall.h>
18 #endif
20 #ifndef GRAPHICS_RASTPORT_H
21 # include <graphics/rastport.h>
22 #endif
24 #ifndef UTILITY_TAGITEM_H
25 # include <utility/tagitem.h>
26 #endif
28 #ifndef GRAPHICS_VIEW_H
29 # include <graphics/view.h>
30 #endif
32 struct IntCGXVBase
34 struct Library libnode;
38 extern APTR driver_AllocCModeListTagList(struct TagItem *taglist, struct GfxBase *GfxBase);
39 extern VOID driver_FreeCModeList(struct List *modeList, struct GfxBase *GfxBase);
40 extern ULONG driver_BestCModeIDTagList(struct TagItem *tags, struct GfxBase *GfxBase);
41 extern ULONG driver_GetCyberIDAttr(ULONG attr, ULONG id, struct GfxBase *GfxBase);
42 extern BOOL driver_IsCyberModeID(ULONG modeid, struct GfxBase *GfxBase);
44 #define GetCGXVBase(base) ((struct IntCGXVBase *)base)
47 extern VOID driver_CVideoCtrlTagList(struct ViewPort *vp, struct TagItem *tags, struct Library *CGXVideoBase);
48 extern ULONG driver_GetCyberMapAttr(struct BitMap *bitMap, ULONG attribute, struct Library *CGXVideoBase);
49 extern LONG driver_WriteLUTPixelArray(APTR srcrect,
50 UWORD srcx, UWORD srcy,
51 UWORD srcmod, struct RastPort *rp, APTR ctable,
52 UWORD destx, UWORD desty,
53 UWORD sizex, UWORD sizey,
54 UBYTE ctabformat,
55 struct Library *CGXVideoBase);
57 extern ULONG driver_ExtractColor(struct RastPort *RastPort, struct BitMap *SingleMap, ULONG Colour, ULONG sX, ULONG sY, ULONG Width, ULONG Height, struct Library *CGXVideoBase);
58 extern ULONG driver_MovePixelArray(UWORD SrcX, UWORD SrcY, struct RastPort *RastPort, UWORD DstX, UWORD DstY, UWORD SizeX, UWORD SizeY, struct Library *CGXVideoBase);
59 extern LONG driver_FillPixelArray(struct RastPort *rp
60 , UWORD destx, UWORD desty, UWORD width, UWORD height
61 , ULONG pixel, struct Library *CGXVideoBase);
63 extern LONG driver_InvertPixelArray(struct RastPort *rp
64 , UWORD destx, UWORD desty, UWORD width, UWORD height
65 , struct Library *CGXVideoBase);
67 extern LONG driver_ReadPixelArray(APTR dst, UWORD destx, UWORD desty
68 , UWORD dstmod, struct RastPort *rp, UWORD srcx, UWORD srcy
69 , UWORD width, UWORD height, UBYTE dstformat, struct Library *CGXVideoBase);
71 extern LONG driver_WriteRGBPixel(struct RastPort *rp, UWORD x, UWORD y
72 , ULONG pixel, struct Library *CGXVideoBase);
74 extern ULONG driver_ReadRGBPixel(struct RastPort *rp, UWORD x, UWORD y
75 , struct Library *CGXVideoBase);
77 extern LONG driver_WritePixelArray(APTR src, UWORD srcx, UWORD srcy
78 , UWORD srcmod, struct RastPort *rp, UWORD destx, UWORD desty
79 , UWORD width, UWORD height, UBYTE srcformat, struct Library *CGXVideoBase);
81 extern LONG driver_WritePixelArrayAlpha(APTR src, UWORD srcx, UWORD srcy
82 , UWORD srcmod, struct RastPort *rp, UWORD destx, UWORD desty
83 , UWORD width, UWORD height, ULONG globalalpha, struct Library *CGXVideoBase);
85 extern void driver_BltTemplateAlpha(UBYTE *src, LONG srcx, LONG srcmod
86 , struct RastPort *rp, LONG destx, LONG desty, LONG width, LONG height
87 , struct Library *CGXVideoBase);
89 extern VOID driver_UnLockBitMapTagList(APTR handle, struct TagItem *tags, struct Library *CGXVideoBase);
90 extern VOID driver_UnLockBitMap(APTR handle, struct Library *CGXVideoBase);
91 extern APTR driver_LockBitMapTagList(struct BitMap *bm, struct TagItem *tags, struct Library *CGXVideoBase);
94 #endif /* CGXVIDEO_INTERN_H */