ReactOS 0.4.15-dev-6042-g2eb6700
ATL::CImage::COMMON Struct Reference

#include <atlimage.h>

Collaboration diagram for ATL::CImage::COMMON:

Public Types

typedef Gdiplus::ImageCodecInfo ICI
 
typedef Gdiplus::EncoderParameters EncParams
 
typedef Gdiplus::ARGB ARGB
 
typedef HBITMAP HBM
 
typedef Gdiplus::GdiplusStartupInput GSI
 
typedef Gdiplus::GdiplusStartupOutput GSO
 
typedef St(WINAPISTARTUP) (ULONG_PTR *, const GSI *, GSO *)
 
typedef void(WINAPISHUTDOWN) (ULONG_PTR)
 
typedef St(APIGETIMAGEENCODERSSIZE) (UINT *, UINT *)
 
typedef St(APIGETIMAGEENCODERS) (UINT, UINT, ICI *)
 
typedef St(APICREATEBITMAPFROMFILE) (CST WCHAR *, Bm **)
 
typedef St(APICREATEHBITMAPFROMBITMAP) (Bm *, HBM *, ARGB)
 
typedef St(APICREATEBITMAPFROMSTREAM) (IStream *, Bm **)
 
typedef St(APICREATEBITMAPFROMHBITMAP) (HBM, HPALETTE, Bm **)
 
typedef St(APISAVEIMAGETOSTREAM) (Im *, IStream *, CST CLSID *, CST EncParams *)
 
typedef St(APISAVEIMAGETOFILE) (Im *, CST WCHAR *, CST CLSID *, CST EncParams *)
 
typedef St(APIDISPOSEIMAGE) (Im *)
 

Public Member Functions

 COMMON ()
 
 ~COMMON ()
 
ULONG AddRef ()
 
ULONG Release ()
 
template<typename TYPE >
TYPE AddrOf (const char *name)
 
HINSTANCE LoadLib ()
 
void FreeLib ()
 

Public Attributes

int count
 
HINSTANCE hinstGdiPlus
 
ULONG_PTR gdiplusToken
 
STARTUP Startup
 
SHUTDOWN Shutdown
 
GETIMAGEENCODERSSIZE GetImageEncodersSize
 
GETIMAGEENCODERS GetImageEncoders
 
CREATEBITMAPFROMFILE CreateBitmapFromFile
 
CREATEHBITMAPFROMBITMAP CreateHBITMAPFromBitmap
 
CREATEBITMAPFROMSTREAM CreateBitmapFromStream
 
CREATEBITMAPFROMHBITMAP CreateBitmapFromHBITMAP
 
SAVEIMAGETOSTREAM SaveImageToStream
 
SAVEIMAGETOFILE SaveImageToFile
 
DISPOSEIMAGE DisposeImage
 

Detailed Description

Definition at line 838 of file atlimage.h.

Member Typedef Documentation

◆ ARGB

typedef Gdiplus::ARGB ATL::CImage::COMMON::ARGB

Definition at line 843 of file atlimage.h.

◆ CREATEBITMAPFROMFILE

typedef St(API * ATL::CImage::COMMON::CREATEBITMAPFROMFILE) (CST WCHAR *, Bm **)

Definition at line 857 of file atlimage.h.

◆ CREATEBITMAPFROMHBITMAP

typedef St(API * ATL::CImage::COMMON::CREATEBITMAPFROMHBITMAP) (HBM, HPALETTE, Bm **)

Definition at line 860 of file atlimage.h.

◆ CREATEBITMAPFROMSTREAM

typedef St(API * ATL::CImage::COMMON::CREATEBITMAPFROMSTREAM) (IStream *, Bm **)

Definition at line 859 of file atlimage.h.

◆ CREATEHBITMAPFROMBITMAP

typedef St(API * ATL::CImage::COMMON::CREATEHBITMAPFROMBITMAP) (Bm *, HBM *, ARGB)

Definition at line 858 of file atlimage.h.

◆ DISPOSEIMAGE

typedef St(API * ATL::CImage::COMMON::DISPOSEIMAGE) (Im *)

Definition at line 865 of file atlimage.h.

◆ EncParams

typedef Gdiplus::EncoderParameters ATL::CImage::COMMON::EncParams

Definition at line 842 of file atlimage.h.

◆ GETIMAGEENCODERS

typedef St(API * ATL::CImage::COMMON::GETIMAGEENCODERS) (UINT, UINT, ICI *)

Definition at line 856 of file atlimage.h.

◆ GETIMAGEENCODERSSIZE

typedef St(API * ATL::CImage::COMMON::GETIMAGEENCODERSSIZE) (UINT *, UINT *)

Definition at line 855 of file atlimage.h.

◆ GSI

typedef Gdiplus::GdiplusStartupInput ATL::CImage::COMMON::GSI

Definition at line 845 of file atlimage.h.

◆ GSO

typedef Gdiplus::GdiplusStartupOutput ATL::CImage::COMMON::GSO

Definition at line 846 of file atlimage.h.

◆ HBM

Definition at line 844 of file atlimage.h.

◆ ICI

typedef Gdiplus::ImageCodecInfo ATL::CImage::COMMON::ICI

Definition at line 841 of file atlimage.h.

◆ SAVEIMAGETOFILE

typedef St(API * ATL::CImage::COMMON::SAVEIMAGETOFILE) (Im *, CST WCHAR *, CST CLSID *, CST EncParams *)

Definition at line 863 of file atlimage.h.

◆ SAVEIMAGETOSTREAM

typedef St(API * ATL::CImage::COMMON::SAVEIMAGETOSTREAM) (Im *, IStream *, CST CLSID *, CST EncParams *)

Definition at line 861 of file atlimage.h.

◆ SHUTDOWN

typedef void(WINAPI * ATL::CImage::COMMON::SHUTDOWN) (ULONG_PTR)

Definition at line 854 of file atlimage.h.

◆ STARTUP

typedef St(WINAPI * ATL::CImage::COMMON::STARTUP) (ULONG_PTR *, const GSI *, GSO *)

Definition at line 853 of file atlimage.h.

Constructor & Destructor Documentation

◆ COMMON()

ATL::CImage::COMMON::COMMON ( )
inline

Definition at line 887 of file atlimage.h.

888 {
889 count = 0;
891 Startup = NULL;
892 Shutdown = NULL;
902 }
#define NULL
Definition: types.h:112
GLuint GLuint GLsizei count
Definition: gl.h:1545
DISPOSEIMAGE DisposeImage
Definition: atlimage.h:885
HINSTANCE hinstGdiPlus
Definition: atlimage.h:871
GETIMAGEENCODERS GetImageEncoders
Definition: atlimage.h:878
SAVEIMAGETOFILE SaveImageToFile
Definition: atlimage.h:884
SHUTDOWN Shutdown
Definition: atlimage.h:876
CREATEBITMAPFROMFILE CreateBitmapFromFile
Definition: atlimage.h:879
CREATEHBITMAPFROMBITMAP CreateHBITMAPFromBitmap
Definition: atlimage.h:880
SAVEIMAGETOSTREAM SaveImageToStream
Definition: atlimage.h:883
CREATEBITMAPFROMSTREAM CreateBitmapFromStream
Definition: atlimage.h:881
GETIMAGEENCODERSSIZE GetImageEncodersSize
Definition: atlimage.h:877
CREATEBITMAPFROMHBITMAP CreateBitmapFromHBITMAP
Definition: atlimage.h:882

◆ ~COMMON()

ATL::CImage::COMMON::~COMMON ( )
inline

Definition at line 903 of file atlimage.h.

904 {
905 FreeLib();
906 }

Member Function Documentation

◆ AddRef()

ULONG ATL::CImage::COMMON::AddRef ( )
inline

Definition at line 908 of file atlimage.h.

909 {
910 return ++count;
911 }

◆ AddrOf()

template<typename TYPE >
TYPE ATL::CImage::COMMON::AddrOf ( const char name)
inline

Definition at line 919 of file atlimage.h.

920 {
922 return reinterpret_cast<TYPE>(proc);
923 }
int(* FARPROC)()
Definition: compat.h:36
#define GetProcAddress(x, y)
Definition: compat.h:753
TYPE
Definition: eventcreate.c:652
static HANDLE proc()
Definition: pdb.c:34
Definition: name.c:39

◆ FreeLib()

void ATL::CImage::COMMON::FreeLib ( )
inline

Definition at line 959 of file atlimage.h.

Referenced by ~COMMON().

◆ LoadLib()

HINSTANCE ATL::CImage::COMMON::LoadLib ( )
inline

Definition at line 925 of file atlimage.h.

926 {
927 if (hinstGdiPlus)
928 return hinstGdiPlus;
929
930 hinstGdiPlus = ::LoadLibraryA("gdiplus.dll");
931
932 // get procedure addresses from the DLL
933 Startup = AddrOf<STARTUP>("GdiplusStartup");
934 Shutdown = AddrOf<SHUTDOWN>("GdiplusShutdown");
936 AddrOf<GETIMAGEENCODERSSIZE>("GdipGetImageEncodersSize");
937 GetImageEncoders = AddrOf<GETIMAGEENCODERS>("GdipGetImageEncoders");
939 AddrOf<CREATEBITMAPFROMFILE>("GdipCreateBitmapFromFile");
941 AddrOf<CREATEHBITMAPFROMBITMAP>("GdipCreateHBITMAPFromBitmap");
943 AddrOf<CREATEBITMAPFROMSTREAM>("GdipCreateBitmapFromStream");
945 AddrOf<CREATEBITMAPFROMHBITMAP>("GdipCreateBitmapFromHBITMAP");
947 AddrOf<SAVEIMAGETOSTREAM>("GdipSaveImageToStream");
948 SaveImageToFile = AddrOf<SAVEIMAGETOFILE>("GdipSaveImageToFile");
949 DisposeImage = AddrOf<DISPOSEIMAGE>("GdipDisposeImage");
950
951 if (hinstGdiPlus && Startup)
952 {
953 Gdiplus::GdiplusStartupInput gdiplusStartupInput;
954 Startup(&gdiplusToken, &gdiplusStartupInput, NULL);
955 }
956
957 return hinstGdiPlus;
958 }
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
Definition: loader.c:111

Referenced by ATL::CImage::CImage().

◆ Release()

ULONG ATL::CImage::COMMON::Release ( )
inline

Definition at line 912 of file atlimage.h.

913 {
914 return --count;
915 }

Referenced by ATL::CImage::ReleaseGDIPlus().

Member Data Documentation

◆ count

int ATL::CImage::COMMON::count

Definition at line 870 of file atlimage.h.

Referenced by AddRef(), and Release().

◆ CreateBitmapFromFile

CREATEBITMAPFROMFILE ATL::CImage::COMMON::CreateBitmapFromFile

Definition at line 879 of file atlimage.h.

Referenced by COMMON(), FreeLib(), and LoadLib().

◆ CreateBitmapFromHBITMAP

CREATEBITMAPFROMHBITMAP ATL::CImage::COMMON::CreateBitmapFromHBITMAP

Definition at line 882 of file atlimage.h.

Referenced by COMMON(), FreeLib(), LoadLib(), and ATL::CImage::Save().

◆ CreateBitmapFromStream

CREATEBITMAPFROMSTREAM ATL::CImage::COMMON::CreateBitmapFromStream

Definition at line 881 of file atlimage.h.

Referenced by COMMON(), FreeLib(), and LoadLib().

◆ CreateHBITMAPFromBitmap

CREATEHBITMAPFROMBITMAP ATL::CImage::COMMON::CreateHBITMAPFromBitmap

Definition at line 880 of file atlimage.h.

Referenced by COMMON(), FreeLib(), ATL::CImage::Load(), and LoadLib().

◆ DisposeImage

DISPOSEIMAGE ATL::CImage::COMMON::DisposeImage

Definition at line 885 of file atlimage.h.

Referenced by COMMON(), FreeLib(), ATL::CImage::Load(), LoadLib(), and ATL::CImage::Save().

◆ gdiplusToken

ULONG_PTR ATL::CImage::COMMON::gdiplusToken

Definition at line 872 of file atlimage.h.

Referenced by FreeLib(), and LoadLib().

◆ GetImageEncoders

GETIMAGEENCODERS ATL::CImage::COMMON::GetImageEncoders

Definition at line 878 of file atlimage.h.

Referenced by COMMON(), FreeLib(), ATL::CImage::GetEncoderClsid(), and LoadLib().

◆ GetImageEncodersSize

GETIMAGEENCODERSSIZE ATL::CImage::COMMON::GetImageEncodersSize

Definition at line 877 of file atlimage.h.

Referenced by COMMON(), FreeLib(), ATL::CImage::GetEncoderClsid(), and LoadLib().

◆ hinstGdiPlus

HINSTANCE ATL::CImage::COMMON::hinstGdiPlus

Definition at line 871 of file atlimage.h.

Referenced by AddrOf(), COMMON(), FreeLib(), and LoadLib().

◆ SaveImageToFile

SAVEIMAGETOFILE ATL::CImage::COMMON::SaveImageToFile

Definition at line 884 of file atlimage.h.

Referenced by COMMON(), FreeLib(), LoadLib(), and ATL::CImage::Save().

◆ SaveImageToStream

SAVEIMAGETOSTREAM ATL::CImage::COMMON::SaveImageToStream

Definition at line 883 of file atlimage.h.

Referenced by COMMON(), FreeLib(), LoadLib(), and ATL::CImage::Save().

◆ Shutdown

SHUTDOWN ATL::CImage::COMMON::Shutdown

Definition at line 876 of file atlimage.h.

Referenced by COMMON(), FreeLib(), and LoadLib().

◆ Startup

STARTUP ATL::CImage::COMMON::Startup

Definition at line 875 of file atlimage.h.

Referenced by COMMON(), FreeLib(), and LoadLib().


The documentation for this struct was generated from the following file: