Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
227
Src/Plugins/Library/ml_devices/image.h
Normal file
227
Src/Plugins/Library/ml_devices/image.h
Normal file
|
@ -0,0 +1,227 @@
|
|||
#ifndef _NULLSOFT_WINAMP_ML_DEVICES_IMAGE_HEADER
|
||||
#define _NULLSOFT_WINAMP_ML_DEVICES_IMAGE_HEADER
|
||||
|
||||
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#define IMAGE_FILTER_NORMAL 0x00000000
|
||||
#define IMAGE_FILTER_GRAYSCALE 0x00010000
|
||||
#define IMAGE_FILTER_BLEND 0x00020000
|
||||
#define IMAGE_FILTER_MASK 0xFFFF0000
|
||||
|
||||
|
||||
typedef struct ImageInfo
|
||||
{
|
||||
unsigned int width;
|
||||
unsigned int height;
|
||||
const wchar_t *path;
|
||||
} ImageInfo;
|
||||
|
||||
|
||||
HBITMAP
|
||||
Image_Load(const wchar_t *path,
|
||||
unsigned int type,
|
||||
unsigned int flags,
|
||||
int width,
|
||||
int height);
|
||||
|
||||
HBITMAP
|
||||
Image_LoadEx(HINSTANCE instance,
|
||||
const wchar_t *path,
|
||||
unsigned int type,
|
||||
unsigned int flags,
|
||||
int width,
|
||||
int height);
|
||||
|
||||
HBITMAP
|
||||
Image_LoadSkinned(const wchar_t *path,
|
||||
unsigned int type,
|
||||
unsigned int flags, //ISF_XXX + IMAGE_FILTER_XXX
|
||||
int width,
|
||||
int height,
|
||||
COLORREF backColor,
|
||||
COLORREF frontColor,
|
||||
COLORREF blendColor); // only valid if IMAGE_FILTER_BLEND set
|
||||
|
||||
HBITMAP
|
||||
Image_LoadSkinnedEx(HINSTANCE instance,
|
||||
const wchar_t *path,
|
||||
unsigned int type,
|
||||
unsigned int flags, //ISF_XXX + IMAGE_FILTER_XXX
|
||||
int width,
|
||||
int height,
|
||||
COLORREF backColor,
|
||||
COLORREF frontColor,
|
||||
COLORREF blendColor); // only valid if IMAGE_FILTER_BLEND set
|
||||
|
||||
BOOL
|
||||
Image_FilterEx(void *pixelData,
|
||||
long width,
|
||||
long height,
|
||||
unsigned short bpp,
|
||||
unsigned int flags,
|
||||
COLORREF backColor,
|
||||
COLORREF frontColor,
|
||||
COLORREF blendColor);
|
||||
|
||||
BOOL
|
||||
Image_Filter(HBITMAP bitmap,
|
||||
unsigned int flags,
|
||||
COLORREF backColor,
|
||||
COLORREF frontColor,
|
||||
COLORREF blendColor);
|
||||
|
||||
BOOL
|
||||
Image_BlendEx(void *pixelData,
|
||||
long width,
|
||||
long height,
|
||||
unsigned short bpp,
|
||||
COLORREF blendColor);
|
||||
BOOL
|
||||
Image_Blend(HBITMAP bitmap,
|
||||
COLORREF blendColor);
|
||||
|
||||
HBITMAP
|
||||
Image_DuplicateDib(HBITMAP source);
|
||||
|
||||
BOOL
|
||||
Image_ColorOver(HBITMAP hbmp,
|
||||
const RECT *prcPart,
|
||||
BOOL premult,
|
||||
COLORREF rgb);
|
||||
|
||||
BOOL
|
||||
Image_ColorOverEx(unsigned char *pPixels,
|
||||
int bitmapCX,
|
||||
int bitmapCY,
|
||||
long x,
|
||||
long y,
|
||||
long cx,
|
||||
long cy,
|
||||
unsigned short bpp,
|
||||
BOOL premult,
|
||||
COLORREF rgb);
|
||||
|
||||
BOOL
|
||||
Image_Premultiply(HBITMAP hbmp,
|
||||
const RECT *prcPart);
|
||||
|
||||
BOOL
|
||||
Image_PremultiplyEx(unsigned char *pPixels,
|
||||
int bitmapCX,
|
||||
int bitmapCY,
|
||||
long x,
|
||||
long y,
|
||||
long cx,
|
||||
long cy,
|
||||
unsigned short bpp);
|
||||
|
||||
BOOL
|
||||
Image_Demultiply(HBITMAP hbmp,
|
||||
const RECT *prcPart);
|
||||
|
||||
BOOL
|
||||
Image_DemultiplyEx(unsigned char *pPixels,
|
||||
int bitmapCX,
|
||||
int bitmapCY,
|
||||
long x,
|
||||
long y,
|
||||
long cx,
|
||||
long cy,
|
||||
unsigned short bpp);
|
||||
|
||||
BOOL
|
||||
Image_Saturate(HBITMAP hbmp,
|
||||
const RECT *prcPart,
|
||||
int n,
|
||||
BOOL fScale);
|
||||
|
||||
BOOL
|
||||
Image_SaturateEx(unsigned char *pPixels,
|
||||
int bitmapCX,
|
||||
int bitmapCY,
|
||||
long x,
|
||||
long y,
|
||||
long cx,
|
||||
long cy,
|
||||
unsigned short bpp,
|
||||
int n,
|
||||
BOOL fScale);
|
||||
|
||||
BOOL
|
||||
Image_AdjustAlpha(HBITMAP hbmp,
|
||||
const RECT *prcPart,
|
||||
int n,
|
||||
BOOL fScale);
|
||||
|
||||
BOOL
|
||||
Image_AdjustAlphaEx(unsigned char *pPixels,
|
||||
int bitmapCX,
|
||||
int bitmapCY,
|
||||
long x,
|
||||
long y,
|
||||
long cx,
|
||||
long cy,
|
||||
unsigned short bpp,
|
||||
int n,
|
||||
BOOL fScale);
|
||||
|
||||
BOOL
|
||||
Image_AdjustSaturationAlpha(HBITMAP hbmp,
|
||||
const RECT *prcPart,
|
||||
int nSaturation,
|
||||
int nAlpha);
|
||||
|
||||
BOOL
|
||||
Image_AdjustSaturationAlphaEx(unsigned char *pPixels,
|
||||
int bitmapCX,
|
||||
int bitmapCY,
|
||||
long x,
|
||||
long y,
|
||||
long cx,
|
||||
long cy,
|
||||
unsigned short bpp,
|
||||
int nSaturation,
|
||||
int nAlpha);
|
||||
|
||||
BOOL
|
||||
Image_FillBorder(HDC targetDC,
|
||||
const RECT *targetRect,
|
||||
HDC sourceDC,
|
||||
const RECT *sourceRect,
|
||||
BOOL fillCenter,
|
||||
BYTE alphaConstant);
|
||||
|
||||
|
||||
const ImageInfo *
|
||||
Image_GetBestFit(const ImageInfo *images,
|
||||
size_t count,
|
||||
unsigned int width,
|
||||
unsigned int height);
|
||||
|
||||
typedef enum AlphaBlendFlags
|
||||
{
|
||||
AlphaBlend_Normal = 0,
|
||||
AlphaBlend_ScaleSource = (1 << 0),
|
||||
AlphaBlend_AlignLeft = (1 << 1),
|
||||
AlphaBlend_AlignRight = (1 << 2),
|
||||
AlphaBlend_AlignCenter = 0,
|
||||
AlphaBlend_AlignTop = (1 << 3),
|
||||
AlphaBlend_AlignBottom = (1 << 4),
|
||||
AlphaBlend_AlignVCenter = 0,
|
||||
}AlphaBlendFlags;
|
||||
DEFINE_ENUM_FLAG_OPERATORS(AlphaBlendFlags);
|
||||
|
||||
BOOL
|
||||
Image_AlphaBlend(HDC targetDC,
|
||||
const RECT *targetRect,
|
||||
HDC sourceDC,
|
||||
const RECT *sourceRect,
|
||||
BYTE sourceAlpha,
|
||||
HBITMAP sourceBitmap,
|
||||
const RECT *paintRect,
|
||||
AlphaBlendFlags flags,
|
||||
RECT *rectOut);
|
||||
|
||||
#endif //_NULLSOFT_WINAMP_ML_DEVICES_IMAGE_HEADER
|
Loading…
Add table
Add a link
Reference in a new issue