summaryrefslogtreecommitdiff
path: root/plugins/Modernb/m_api/m_skinned_profile.h
blob: 0b0932bac6bcc0b3ce44a534f054e7103e761a0b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifdef m_skinned_profile_h__
#define m_skinned_profile_h__

#define MS_SKINPROFILE_GET_INTERFACE

#ifdef _cplusplus
extern "C" {
#endif //_cplusplus

struct SKIN_PROFILE_INTERFACE
{
    DWORD   cbSize;  
    
    int  (*pfnGetByte) ( HANDLE, const char *, const char *,  int,  const char *szFile, const int nLine);
    int  (*pfnGetWord) ( HANDLE, const char *, const char *,  int,  const char *szFile, const int nLine);
    int  (*pfnGetDword)( HANDLE, const char *, const char *,  int,  const char *szFile, const int nLine);

};

#ifdef SPI_DECLARE_INTERFACE_INIT
#include <m_database.h>
__forceinline int mir_getSPI( struct SKIN_PROFILE_INTERFACE * pspi)
{
    if ( !ServiceExists( MS_SKINPROFILE_GET_INTERFACE ) )
    {
        pspi->pfnGetByte  = DBGetContactSettingByte_Helper;
        pspi->pfnGetWord  = DBGetContactSettingWord_Helper;
        pspi->pfnGetDword = DBGetContactSettingDword_Helper;
        return 0;
    }
    else
    {
        pspi->cbSize = sizeof( struct SKIN_PROFILE_INTERFACE );
        return CallService( MS_SKINPROFILE_GET_INTERFACE, 0, (LPARAM) pspi );
    }
}
#endif

#ifdef _cplusplus
};
#endif //_cplusplus


#endif // m_skinned_profile_h__