FireBirdLib - Topfield TMS PVR TAP Programming Library
TAP_Osd_Copy_Chk.c
Go to the documentation of this file.
1#define FB_DEBUG_CHK
2#define FB_LOG_ENTRY_LIB_PRINTF
3#include "libFireBird.h"
4
5//TAP_Osd_Copy(word srcRgnNum, word dstRgnNum, dword srcX, dword srcY, dword w, dword h, dword dstX, dword dstY, bool sprite);
6
7//Checks:
8//* Get width and height of source region
9//* Warning if srcX >= width
10//* Warning if srcY >= height
11//* Warning if (srcX + w) >= width
12//* Warning if (srcY + h) >= height
13//* Get width and height of destination region
14//* Warning if dstX >= width
15//* Warning if dstY >= height
16//* Warning if (dstX + w) >= width
17//* Warning if (dstY + h) >= height
18
19
20int TAP_Osd_Copy_Chk(char *Comment, word srcRgnNum, word dstRgnNum, dword srcX, dword srcY, dword w, dword h, dword dstX, dword dstY, bool sprite)
21{
22 TRACEENTER();
23
24 dword RgnH, RgnW;
25 int ret;
26
27 RgnH = GetOSDRegionHeight(srcRgnNum);
28 RgnW = GetOSDRegionWidth(srcRgnNum);
29
30 if(Comment)
31 {
32 if(srcX >= RgnW) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: srcX(%lu) >= srcRgnW(%lu) @ %s", srcX, RgnW, Comment);
33 if(srcY >= RgnH) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: srcY(%lu) >= srcRgnH(%lu) @ %s", srcY, RgnH, Comment);
34 if((srcX + w) > RgnW) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: (srcX(%lu) + w(%lu)) > srcRgnW(%lu) @ %s", srcX, w, RgnW, Comment);
35 if((srcY + h) > RgnH) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: (srcY(%lu) + h(%lu)) > srcRgnH(%lu) @ %s", srcY, h, RgnH, Comment);
36 }
37
38 RgnH = GetOSDRegionHeight(dstRgnNum);
39 RgnW = GetOSDRegionWidth(dstRgnNum);
40
41 if(Comment)
42 {
43 if(dstX >= RgnW) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: dstX(%lu) >= srcRgnW(%lu) @ %s", dstX, RgnW, Comment);
44 if(srcY >= RgnH) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: srcY(%lu) >= srcRgnH(%lu) @ %s", srcY, RgnH, Comment);
45 if((dstX + w) > RgnW) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: (dstX(%lu) + w(%lu)) > dstRgnW(%lu) @ %s", dstX, w, RgnW, Comment);
46 if((dstY + h) > RgnH) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: (dstY(%lu) + h(%lu)) > dstRgnH(%lu) @ %s", dstY, h, RgnH, Comment);
47 }
48
49 ret = TAP_Osd_Copy(srcRgnNum, dstRgnNum, srcX, srcY, w, h, dstX, dstY, sprite);
50
51 if(Comment && ret) LogEntryFBLibPrintf(TRUE, "TAP_Osd_Copy_Chk Warning: TAP_Osd_Copy() returned %d @ %s", ret, Comment);
52
53 TRACEEXIT();
54 return ret;
55}
word GetOSDRegionHeight(word Region)
word GetOSDRegionWidth(word Region)
void LogEntryFBLibPrintf(bool Console, char *format,...)
int TAP_Osd_Copy_Chk(char *Comment, word srcRgnNum, word dstRgnNum, dword srcX, dword srcY, dword w, dword h, dword dstX, dword dstY, bool sprite)
#define TRACEEXIT()
Definition: libFireBird.h:1244
#define TRACEENTER()
Definition: libFireBird.h:1243