mirror of
https://github.com/reactos/reactos.git
synced 2025-05-30 14:39:46 +00:00
Sync with trunk 48067
svn path=/branches/reactos-yarotows/; revision=48068
This commit is contained in:
commit
f819794d7d
24 changed files with 1063 additions and 279 deletions
|
@ -555,7 +555,6 @@ static BOOL Ping(VOID)
|
|||
}
|
||||
if (Status == SOCKET_ERROR)
|
||||
{
|
||||
LostCount++;
|
||||
if (WSAGetLastError() == WSAEHOSTUNREACH)
|
||||
printf("Destination host unreachable.\n");
|
||||
else
|
||||
|
|
|
@ -299,17 +299,6 @@ LRESULT CALLBACK AddressBarProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lPar
|
|||
return CallWindowProc(oldwndproc, hwnd, uMsg, wParam, lParam);
|
||||
}
|
||||
|
||||
/* fix coords to top-left when SHIFT-F10 is pressed */
|
||||
void FixPointIfContext(POINTS *pt, HWND hWnd)
|
||||
{
|
||||
if (pt->x == -1 && pt->y == -1) {
|
||||
POINT p = { 0, 0 };
|
||||
ClientToScreen(hWnd, &p);
|
||||
pt->x = (WORD)(p.x);
|
||||
pt->y = (WORD)(p.y);
|
||||
}
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
*
|
||||
* FUNCTION: ChildWndProc(HWND, unsigned, WORD, LONG)
|
||||
|
@ -577,16 +566,29 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
|
|||
|
||||
case WM_CONTEXTMENU:
|
||||
{
|
||||
POINTS pt;
|
||||
POINT pt;
|
||||
if((HWND)wParam == pChildWnd->hListWnd)
|
||||
{
|
||||
int i, cnt;
|
||||
BOOL IsDefault;
|
||||
pt.x = LOWORD(lParam);
|
||||
pt.y = HIWORD(lParam);
|
||||
pt.x = (short) LOWORD(lParam);
|
||||
pt.y = (short) HIWORD(lParam);
|
||||
cnt = ListView_GetSelectedCount(pChildWnd->hListWnd);
|
||||
i = ListView_GetNextItem(pChildWnd->hListWnd, -1, LVNI_FOCUSED | LVNI_SELECTED);
|
||||
FixPointIfContext(&pt, pChildWnd->hListWnd);
|
||||
if (pt.x == -1 && pt.y == -1)
|
||||
{
|
||||
RECT rc;
|
||||
if (i != -1)
|
||||
{
|
||||
rc.left = LVIR_BOUNDS;
|
||||
SendMessage(pChildWnd->hListWnd, LVM_GETITEMRECT, i, (LPARAM) &rc);
|
||||
pt.x = rc.left + 8;
|
||||
pt.y = rc.top + 8;
|
||||
}
|
||||
else
|
||||
pt.x = pt.y = 0;
|
||||
}
|
||||
ClientToScreen(pChildWnd->hListWnd, &pt);
|
||||
if(i == -1)
|
||||
{
|
||||
TrackPopupMenu(GetSubMenu(hPopupMenus, PM_NEW), TPM_RIGHTBUTTON, pt.x, pt.y, 0, hFrameWnd, NULL);
|
||||
|
@ -620,14 +622,33 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
|
|||
int iLastPos;
|
||||
WORD wID;
|
||||
|
||||
pt.x = LOWORD(lParam);
|
||||
pt.y = HIWORD(lParam);
|
||||
hti.pt.x = pt.x;
|
||||
hti.pt.y = pt.y;
|
||||
ScreenToClient(pChildWnd->hTreeWnd, &hti.pt);
|
||||
(void)TreeView_HitTest(pChildWnd->hTreeWnd, &hti);
|
||||
pt.x = (short) LOWORD(lParam);
|
||||
pt.y = (short) HIWORD(lParam);
|
||||
|
||||
if ((hti.flags & TVHT_ONITEM) != 0 || (pt.x == -1 && pt.y == -1))
|
||||
if (pt.x == -1 && pt.y == -1)
|
||||
{
|
||||
RECT rc;
|
||||
hti.hItem = TreeView_GetSelection(pChildWnd->hTreeWnd);
|
||||
if (hti.hItem != NULL)
|
||||
{
|
||||
TreeView_GetItemRect(pChildWnd->hTreeWnd, hti.hItem, &rc, TRUE);
|
||||
pt.x = rc.left + 8;
|
||||
pt.y = rc.top + 8;
|
||||
ClientToScreen(pChildWnd->hTreeWnd, &pt);
|
||||
hti.flags = TVHT_ONITEM;
|
||||
}
|
||||
else
|
||||
hti.flags = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
hti.pt.x = pt.x;
|
||||
hti.pt.y = pt.y;
|
||||
ScreenToClient(pChildWnd->hTreeWnd, &hti.pt);
|
||||
(void)TreeView_HitTest(pChildWnd->hTreeWnd, &hti);
|
||||
}
|
||||
|
||||
if (hti.flags & TVHT_ONITEM)
|
||||
{
|
||||
hContextMenu = GetSubMenu(hPopupMenus, PM_TREECONTEXT);
|
||||
(void)TreeView_SelectItem(pChildWnd->hTreeWnd, hti.hItem);
|
||||
|
@ -688,7 +709,6 @@ LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lPa
|
|||
s += _tcslen(s) + 1;
|
||||
}
|
||||
}
|
||||
FixPointIfContext(&pt, pChildWnd->hTreeWnd);
|
||||
TrackPopupMenu(hContextMenu, TPM_RIGHTBUTTON, pt.x, pt.y, 0, pChildWnd->hWnd, NULL);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -44,6 +44,10 @@ typedef struct
|
|||
INT CaretCol;
|
||||
INT CaretLine;
|
||||
BOOL InMid;
|
||||
|
||||
INT SelStart;
|
||||
INT SelEnd;
|
||||
BOOL SelOnField;
|
||||
} HEXEDIT_DATA, *PHEXEDIT_DATA;
|
||||
|
||||
/* hit test codes */
|
||||
|
@ -181,13 +185,25 @@ static VOID
|
|||
HEXEDIT_PaintLines(PHEXEDIT_DATA hed, HDC hDC, DWORD ScrollPos, DWORD First, DWORD Last, RECT *rc)
|
||||
{
|
||||
DWORD dx, dy, linestart;
|
||||
INT x;
|
||||
INT i, isave, i0, i1, x;
|
||||
PBYTE buf, current, end, line;
|
||||
size_t bufsize;
|
||||
TCHAR hex[3], addr[17];
|
||||
RECT rct;
|
||||
RECT rct, rct2;
|
||||
|
||||
FillRect(hDC, rc, (HBRUSH)(COLOR_WINDOW + 1));
|
||||
SetTextColor(hDC, GetSysColor(COLOR_WINDOWTEXT));
|
||||
|
||||
if (hed->SelStart < hed->SelEnd)
|
||||
{
|
||||
i0 = hed->SelStart;
|
||||
i1 = hed->SelEnd;
|
||||
}
|
||||
else
|
||||
{
|
||||
i0 = hed->SelEnd;
|
||||
i1 = hed->SelStart;
|
||||
}
|
||||
|
||||
if(hed->hBuffer)
|
||||
{
|
||||
|
@ -212,9 +228,11 @@ HEXEDIT_PaintLines(PHEXEDIT_DATA hed, HDC hDC, DWORD ScrollPos, DWORD First, DWO
|
|||
end = buf + bufsize;
|
||||
dy = First * hed->LineHeight;
|
||||
linestart = (ScrollPos + First) * hed->ColumnsPerLine;
|
||||
i = linestart;
|
||||
current = buf + linestart;
|
||||
Last = min(hed->nLines - ScrollPos, Last);
|
||||
|
||||
SetBkMode(hDC, TRANSPARENT);
|
||||
while(First <= Last && current < end)
|
||||
{
|
||||
DWORD dh;
|
||||
|
@ -236,25 +254,54 @@ HEXEDIT_PaintLines(PHEXEDIT_DATA hed, HDC hDC, DWORD ScrollPos, DWORD First, DWO
|
|||
/* draw hex map */
|
||||
dx += (hed->CharWidth / 2);
|
||||
line = current;
|
||||
isave = i;
|
||||
for(x = 0; x < hed->ColumnsPerLine && current < end; x++)
|
||||
{
|
||||
rct.left += dh;
|
||||
rct.right += dh;
|
||||
|
||||
_stprintf(hex, _T("%02X"), *(current++));
|
||||
ExtTextOut(hDC, dx, dy, ETO_OPAQUE, &rct, hex, 2, NULL);
|
||||
if (i0 <= i && i < i1)
|
||||
{
|
||||
rct2.left = dx;
|
||||
rct2.top = dy;
|
||||
rct2.right = dx + hed->CharWidth * 2 + 1;
|
||||
rct2.bottom = dy + hed->LineHeight;
|
||||
InflateRect(&rct2, hed->CharWidth / 2, 0);
|
||||
FillRect(hDC, &rct2, (HBRUSH)(COLOR_HIGHLIGHT + 1));
|
||||
SetTextColor(hDC, GetSysColor(COLOR_HIGHLIGHTTEXT));
|
||||
ExtTextOut(hDC, dx, dy, 0, &rct, hex, 2, NULL);
|
||||
SetTextColor(hDC, GetSysColor(COLOR_WINDOWTEXT));
|
||||
}
|
||||
else
|
||||
ExtTextOut(hDC, dx, dy, ETO_OPAQUE, &rct, hex, 2, NULL);
|
||||
dx += dh;
|
||||
i++;
|
||||
}
|
||||
|
||||
/* draw ascii map */
|
||||
dx = ((4 + hed->AddressSpacing + hed->SplitSpacing + (hed->ColumnsPerLine * 3)) * hed->CharWidth);
|
||||
current = line;
|
||||
i = isave;
|
||||
for(x = 0; x < hed->ColumnsPerLine && current < end; x++)
|
||||
{
|
||||
_stprintf(hex, _T("%C"), *(current++));
|
||||
hex[0] = ((hex[0] & _T('\x007f')) >= _T(' ') ? hex[0] : _T('.'));
|
||||
TextOut(hDC, dx, dy, hex, 1);
|
||||
if (i0 <= i && i < i1)
|
||||
{
|
||||
rct2.left = dx;
|
||||
rct2.top = dy;
|
||||
rct2.right = dx + hed->CharWidth;
|
||||
rct2.bottom = dy + hed->LineHeight;
|
||||
FillRect(hDC, &rct2, (HBRUSH)(COLOR_HIGHLIGHT + 1));
|
||||
SetTextColor(hDC, GetSysColor(COLOR_HIGHLIGHTTEXT));
|
||||
TextOut(hDC, dx, dy, hex, 1);
|
||||
SetTextColor(hDC, GetSysColor(COLOR_WINDOWTEXT));
|
||||
}
|
||||
else
|
||||
TextOut(hDC, dx, dy, hex, 1);
|
||||
dx += hed->CharWidth;
|
||||
i++;
|
||||
}
|
||||
|
||||
dy += hed->LineHeight;
|
||||
|
@ -291,14 +338,14 @@ HEXEDIT_HitRegionTest(PHEXEDIT_DATA hed, POINTS pt)
|
|||
}
|
||||
|
||||
pt.x -= d;
|
||||
d = (3 * hed->ColumnsPerLine * hed->CharWidth);
|
||||
d = ((3 * hed->ColumnsPerLine + 1) * hed->CharWidth);
|
||||
if(pt.x <= d)
|
||||
{
|
||||
return HEHT_HEXDUMP;
|
||||
}
|
||||
|
||||
pt.x -= d;
|
||||
d = (hed->SplitSpacing * hed->CharWidth);
|
||||
d = ((hed->SplitSpacing - 1) * hed->CharWidth);
|
||||
if(pt.x <= d)
|
||||
{
|
||||
return HEHT_HEXDUMPSPACING;
|
||||
|
@ -501,7 +548,6 @@ HEXEDIT_WM_NCCREATE(HWND hWnd, CREATESTRUCT *cs)
|
|||
hed->AddressSpacing = 2;
|
||||
hed->SplitSpacing = 2;
|
||||
hed->EditingField = TRUE; /* in hexdump field */
|
||||
hed->InMid = FALSE;
|
||||
|
||||
SetWindowLongPtr(hWnd, 0, (DWORD_PTR)hed);
|
||||
HEXEDIT_Update(hed);
|
||||
|
@ -689,7 +735,7 @@ HEXEDIT_WM_PAINT(PHEXEDIT_DATA hed)
|
|||
FillRect(ps.hdc, &rc, (HBRUSH)(COLOR_WINDOW + 1));
|
||||
goto epaint;
|
||||
}
|
||||
if(!(hbmp = CreateCompatibleBitmap(hTempDC, ps.rcPaint.right, ps.rcPaint.bottom)))
|
||||
if(!(hbmp = CreateCompatibleBitmap(ps.hdc, ps.rcPaint.right, ps.rcPaint.bottom)))
|
||||
{
|
||||
FillRect(ps.hdc, &rc, (HBRUSH)(COLOR_WINDOW + 1));
|
||||
DeleteDC(hTempDC);
|
||||
|
@ -705,7 +751,7 @@ HEXEDIT_WM_PAINT(PHEXEDIT_DATA hed)
|
|||
DeleteObject(hbmp);
|
||||
DeleteDC(hTempDC);
|
||||
|
||||
epaint:
|
||||
epaint:
|
||||
EndPaint(hed->hWndSelf, &ps);
|
||||
}
|
||||
|
||||
|
@ -755,27 +801,85 @@ HEXEDIT_WM_LBUTTONDOWN(PHEXEDIT_DATA hed, INT Buttons, POINTS Pt)
|
|||
{
|
||||
BOOL NewField;
|
||||
POINT EditPos;
|
||||
DWORD Hit = HEXEDIT_HitRegionTest(hed, Pt);
|
||||
DWORD Hit;
|
||||
|
||||
UNREFERENCED_PARAMETER(Buttons);
|
||||
SetFocus(hed->hWndSelf);
|
||||
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, Hit, &EditPos, &NewField);
|
||||
hed->EditingField = NewField;
|
||||
if (GetAsyncKeyState(VK_SHIFT) < 0)
|
||||
{
|
||||
if (hed->SelOnField)
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_HEXDUMP, &EditPos, &NewField);
|
||||
else
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_ASCIIDUMP, &EditPos, &NewField);
|
||||
hed->SelEnd = hed->Index;
|
||||
hed->EditingField = hed->SelOnField;
|
||||
}
|
||||
else
|
||||
{
|
||||
Hit = HEXEDIT_HitRegionTest(hed, Pt);
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, Hit, &EditPos, &NewField);
|
||||
hed->SelStart = hed->SelEnd = hed->Index;
|
||||
hed->SelOnField = hed->EditingField = NewField;
|
||||
SetCapture(hed->hWndSelf);
|
||||
}
|
||||
hed->CaretCol = EditPos.x;
|
||||
hed->CaretLine = EditPos.y;
|
||||
hed->InMid = FALSE;
|
||||
|
||||
InvalidateRect(hed->hWndSelf, NULL, FALSE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static LRESULT
|
||||
HEXEDIT_WM_LBUTTONUP(PHEXEDIT_DATA hed, INT Buttons, POINTS Pt)
|
||||
{
|
||||
BOOL NewField;
|
||||
POINT EditPos;
|
||||
if (GetCapture() == hed->hWndSelf)
|
||||
{
|
||||
if (hed->SelOnField)
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_HEXDUMP, &EditPos, &NewField);
|
||||
else
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_ASCIIDUMP, &EditPos, &NewField);
|
||||
hed->CaretCol = EditPos.x;
|
||||
hed->CaretLine = EditPos.y;
|
||||
hed->SelEnd = hed->Index;
|
||||
ReleaseCapture();
|
||||
InvalidateRect(hed->hWndSelf, NULL, FALSE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static LRESULT
|
||||
HEXEDIT_WM_MOUSEMOVE(PHEXEDIT_DATA hed, INT Buttons, POINTS Pt)
|
||||
{
|
||||
BOOL NewField;
|
||||
POINT EditPos;
|
||||
if (GetCapture() == hed->hWndSelf)
|
||||
{
|
||||
if (hed->SelOnField)
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_HEXDUMP, &EditPos, &NewField);
|
||||
else
|
||||
hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_ASCIIDUMP, &EditPos, &NewField);
|
||||
hed->CaretCol = EditPos.x;
|
||||
hed->CaretLine = EditPos.y;
|
||||
hed->SelEnd = hed->Index;
|
||||
InvalidateRect(hed->hWndSelf, NULL, FALSE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static BOOL
|
||||
HEXEDIT_WM_KEYDOWN(PHEXEDIT_DATA hed, INT VkCode)
|
||||
{
|
||||
size_t bufsize;
|
||||
PBYTE buf;
|
||||
INT i0, i1;
|
||||
|
||||
if(GetKeyState(VK_MENU) & 0x8000)
|
||||
{
|
||||
return FALSE;
|
||||
|
@ -783,62 +887,106 @@ HEXEDIT_WM_KEYDOWN(PHEXEDIT_DATA hed, INT VkCode)
|
|||
|
||||
bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0);
|
||||
|
||||
if (hed->SelStart < hed->SelEnd)
|
||||
{
|
||||
i0 = hed->SelStart;
|
||||
i1 = hed->SelEnd;
|
||||
}
|
||||
else
|
||||
{
|
||||
i0 = hed->SelEnd;
|
||||
i1 = hed->SelStart;
|
||||
}
|
||||
|
||||
switch(VkCode)
|
||||
{
|
||||
case VK_DELETE:
|
||||
if (hed->InMid && hed->EditingField)
|
||||
if (hed->SelStart != hed->SelEnd)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index, buf + hed->Index + 1,
|
||||
bufsize - hed->Index - 1);
|
||||
MoveMemory(buf + i0, buf + i1, bufsize - i1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0));
|
||||
hed->InMid = FALSE;
|
||||
hed->Index = hed->SelStart = hed->SelEnd = i0;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
}
|
||||
else if (hed->Index < bufsize)
|
||||
else
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
if (hed->InMid && hed->EditingField)
|
||||
{
|
||||
MoveMemory(buf + hed->Index, buf + hed->Index + 1,
|
||||
bufsize - hed->Index - 1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index, buf + hed->Index + 1,
|
||||
bufsize - hed->Index - 1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
hed->InMid = FALSE;
|
||||
}
|
||||
else if (hed->Index < bufsize)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index, buf + hed->Index + 1,
|
||||
bufsize - hed->Index - 1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
}
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
break;
|
||||
|
||||
case VK_BACK:
|
||||
if (hed->InMid && hed->EditingField)
|
||||
if (hed->SelStart != hed->SelEnd)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index, buf + hed->Index + 1,
|
||||
bufsize - hed->Index - 1);
|
||||
MoveMemory(buf + i0, buf + i1, bufsize - i1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0));
|
||||
hed->InMid = FALSE;
|
||||
}
|
||||
else if (hed->Index > 0)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index - 1, buf + hed->Index,
|
||||
bufsize - hed->Index);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
hed->Index--;
|
||||
hed->Index = hed->SelStart = hed->SelEnd = i0;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (hed->InMid && hed->EditingField)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index, buf + hed->Index + 1,
|
||||
bufsize - hed->Index - 1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
}
|
||||
else if (hed->Index > 0)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + hed->Index - 1, buf + hed->Index,
|
||||
bufsize - hed->Index);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
hed->Index--;
|
||||
hed->SelStart = hed->SelEnd = hed->Index;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1);
|
||||
hed->InMid = FALSE;
|
||||
}
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
|
@ -849,9 +997,14 @@ HEXEDIT_WM_KEYDOWN(PHEXEDIT_DATA hed, INT VkCode)
|
|||
if (hed->Index > 0)
|
||||
{
|
||||
hed->Index--;
|
||||
if (GetAsyncKeyState(VK_SHIFT) < 0)
|
||||
hed->SelEnd = hed->Index;
|
||||
else
|
||||
hed->SelStart = hed->SelEnd = hed->Index;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
hed->InMid = FALSE;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
break;
|
||||
|
@ -860,9 +1013,14 @@ HEXEDIT_WM_KEYDOWN(PHEXEDIT_DATA hed, INT VkCode)
|
|||
if (hed->Index < (INT)bufsize)
|
||||
{
|
||||
hed->Index++;
|
||||
if (GetAsyncKeyState(VK_SHIFT) < 0)
|
||||
hed->SelEnd = hed->Index;
|
||||
else
|
||||
hed->SelStart = hed->SelEnd = hed->Index;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
hed->InMid = FALSE;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
break;
|
||||
|
@ -871,27 +1029,31 @@ HEXEDIT_WM_KEYDOWN(PHEXEDIT_DATA hed, INT VkCode)
|
|||
if (hed->Index >= hed->ColumnsPerLine)
|
||||
{
|
||||
hed->Index -= hed->ColumnsPerLine;
|
||||
if (GetAsyncKeyState(VK_SHIFT) < 0)
|
||||
hed->SelEnd = hed->Index;
|
||||
else
|
||||
hed->SelStart = hed->SelEnd = hed->Index;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
hed->InMid = FALSE;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
break;
|
||||
|
||||
case VK_DOWN:
|
||||
if (hed->Index + hed->ColumnsPerLine <= (INT) bufsize)
|
||||
{
|
||||
hed->Index += hed->ColumnsPerLine;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
}
|
||||
else
|
||||
{
|
||||
hed->Index = bufsize;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
}
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
if (GetAsyncKeyState(VK_SHIFT) < 0)
|
||||
hed->SelEnd = hed->Index;
|
||||
else
|
||||
hed->SelStart = hed->SelEnd = hed->Index;
|
||||
hed->InMid = FALSE;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
break;
|
||||
}
|
||||
|
@ -904,12 +1066,36 @@ HEXEDIT_WM_CHAR(PHEXEDIT_DATA hed, WCHAR ch)
|
|||
{
|
||||
size_t bufsize;
|
||||
PBYTE buf;
|
||||
INT i0, i1;
|
||||
|
||||
bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0);
|
||||
if (hed->SelStart < hed->SelEnd)
|
||||
{
|
||||
i0 = hed->SelStart;
|
||||
i1 = hed->SelEnd;
|
||||
}
|
||||
else
|
||||
{
|
||||
i0 = hed->SelEnd;
|
||||
i1 = hed->SelStart;
|
||||
}
|
||||
if (!hed->EditingField)
|
||||
{
|
||||
if (0x20 <= ch && ch < 0x7F)
|
||||
if (0x20 <= ch && ch <= 0xFF)
|
||||
{
|
||||
if (hed->SelStart != hed->SelEnd)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + i0, buf + i1, bufsize - i1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0));
|
||||
hed->InMid = FALSE;
|
||||
bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0);
|
||||
hed->Index = hed->SelStart = hed->SelEnd = i0;
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize + 1);
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
|
@ -932,6 +1118,19 @@ HEXEDIT_WM_CHAR(PHEXEDIT_DATA hed, WCHAR ch)
|
|||
if (('0' <= ch && ch <= '9') || ('A' <= ch && ch <= 'F') ||
|
||||
('a' <= ch && ch <= 'f'))
|
||||
{
|
||||
if (hed->SelStart != hed->SelEnd)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
if (buf)
|
||||
{
|
||||
MoveMemory(buf + i0, buf + i1, bufsize - i1);
|
||||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0));
|
||||
hed->InMid = FALSE;
|
||||
bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0);
|
||||
hed->Index = hed->SelStart = hed->SelEnd = i0;
|
||||
}
|
||||
if (hed->InMid)
|
||||
{
|
||||
buf = (PBYTE) LocalLock(hed->hBuffer);
|
||||
|
@ -947,10 +1146,6 @@ HEXEDIT_WM_CHAR(PHEXEDIT_DATA hed, WCHAR ch)
|
|||
}
|
||||
hed->InMid = FALSE;
|
||||
hed->Index++;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -969,11 +1164,11 @@ HEXEDIT_WM_CHAR(PHEXEDIT_DATA hed, WCHAR ch)
|
|||
LocalUnlock(hed->hBuffer);
|
||||
}
|
||||
hed->InMid = TRUE;
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
}
|
||||
hed->CaretCol = hed->Index % hed->ColumnsPerLine;
|
||||
hed->CaretLine = hed->Index / hed->ColumnsPerLine;
|
||||
InvalidateRect(hed->hWndSelf, NULL, TRUE);
|
||||
HEXEDIT_MoveCaret(hed, TRUE);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
@ -1024,6 +1219,20 @@ HexEditWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
return HEXEDIT_WM_LBUTTONDOWN(hed, (INT)wParam, p);
|
||||
}
|
||||
|
||||
case WM_LBUTTONUP:
|
||||
{
|
||||
p.x = LOWORD(lParam);
|
||||
p.y = HIWORD(lParam);
|
||||
return HEXEDIT_WM_LBUTTONUP(hed, (INT)wParam, p);
|
||||
}
|
||||
|
||||
case WM_MOUSEMOVE:
|
||||
{
|
||||
p.x = LOWORD(lParam);
|
||||
p.y = HIWORD(lParam);
|
||||
return HEXEDIT_WM_MOUSEMOVE(hed, (INT)wParam, p);
|
||||
}
|
||||
|
||||
case WM_MOUSEWHEEL:
|
||||
{
|
||||
UINT nScrollLines = 3;
|
||||
|
@ -1080,8 +1289,16 @@ HexEditWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
return HEXEDIT_WM_NCDESTROY(hed);
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_CONTEXTMENU:
|
||||
/* FIXME: Implement Cut, Copy, Paste, Delete and Select All */
|
||||
break;
|
||||
|
||||
case WM_COMMAND:
|
||||
/* FIXME: Implement Cut, Copy, Paste, Delete and Select All */
|
||||
break;
|
||||
}
|
||||
|
||||
return CallWindowProc(DefWindowProc, hWnd, uMsg, wParam, lParam);
|
||||
return DefWindowProc(hWnd, uMsg, wParam, lParam);
|
||||
}
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
4 = -O2
|
||||
5 = -O3
|
||||
-->
|
||||
<property name="OPTIMIZE" value="1" />
|
||||
<property name="OPTIMIZE" value="0" />
|
||||
|
||||
|
||||
<!--
|
||||
|
|
5
dll/3rdparty/libtiff/libtiff.rbuild
vendored
5
dll/3rdparty/libtiff/libtiff.rbuild
vendored
|
@ -3,8 +3,9 @@
|
|||
<module name="libtiff" type="win32dll" entrypoint="0" installbase="system32" installname="libtiff.dll" allowwarnings="true" crt="msvcrt">
|
||||
<define name="WIN32" />
|
||||
<define name="NDEBUG" />
|
||||
<define name="_WINDOWS" />
|
||||
<define name="_USRDLL" />
|
||||
<define name="BUILD_LIBTIFF_DLL" />
|
||||
<define name="DLL_EXPORT" />
|
||||
<define name="USE_WIN32_FILEIO" />
|
||||
<include base="libtiff">.</include>
|
||||
<include base="ReactOS">include/reactos/libs/zlib</include>
|
||||
<include base="ReactOS">include/reactos/libs/libtiff</include>
|
||||
|
|
15
dll/3rdparty/libtiff/rosdiff.patch
vendored
Normal file
15
dll/3rdparty/libtiff/rosdiff.patch
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
Index: tif_open.c
|
||||
===================================================================
|
||||
--- tif_open.c (revision 48037)
|
||||
+++ tif_open.c (working copy)
|
||||
@@ -516,6 +516,9 @@
|
||||
TIFFSetClientdata(TIFF* tif, thandle_t newvalue)
|
||||
{
|
||||
thandle_t m = tif->tif_clientdata;
|
||||
+#ifdef USE_WIN32_FILEIO
|
||||
+ newvalue = (thandle_t) _get_osfhandle(newvalue);
|
||||
+#endif /* USE_WIN32_FILEIO */
|
||||
tif->tif_clientdata = newvalue;
|
||||
return m;
|
||||
}
|
||||
|
3
dll/3rdparty/libtiff/tif_open.c
vendored
3
dll/3rdparty/libtiff/tif_open.c
vendored
|
@ -516,6 +516,9 @@ thandle_t
|
|||
TIFFSetClientdata(TIFF* tif, thandle_t newvalue)
|
||||
{
|
||||
thandle_t m = tif->tif_clientdata;
|
||||
#ifdef USE_WIN32_FILEIO
|
||||
newvalue = (thandle_t) _get_osfhandle(newvalue);
|
||||
#endif /* USE_WIN32_FILEIO */
|
||||
tif->tif_clientdata = newvalue;
|
||||
return m;
|
||||
}
|
||||
|
|
|
@ -518,7 +518,7 @@ BOOL WINAPI SetupIterateCabinetA(PCSTR CabinetFile, DWORD Reserved,
|
|||
|
||||
SC_HSC_A my_hsc;
|
||||
ERF erf;
|
||||
CHAR pszCabinet[MAX_PATH], pszCabPath[MAX_PATH], *p;
|
||||
CHAR pszCabinet[MAX_PATH], pszCabPath[MAX_PATH], *p = NULL;
|
||||
DWORD fpnsize;
|
||||
BOOL ret;
|
||||
|
||||
|
@ -529,6 +529,12 @@ BOOL WINAPI SetupIterateCabinetA(PCSTR CabinetFile, DWORD Reserved,
|
|||
if (! LoadCABINETDll())
|
||||
return FALSE;
|
||||
|
||||
if (!CabinetFile)
|
||||
{
|
||||
SetLastError(ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
memset(&my_hsc, 0, sizeof(SC_HSC_A));
|
||||
pszCabinet[0] = '\0';
|
||||
pszCabPath[0] = '\0';
|
||||
|
@ -584,7 +590,7 @@ BOOL WINAPI SetupIterateCabinetW(PCWSTR CabinetFile, DWORD Reserved,
|
|||
UINT len;
|
||||
SC_HSC_W my_hsc;
|
||||
ERF erf;
|
||||
WCHAR pszCabPathW[MAX_PATH], *p;
|
||||
WCHAR pszCabPathW[MAX_PATH], *p = NULL;
|
||||
DWORD fpnsize;
|
||||
BOOL ret;
|
||||
|
||||
|
@ -594,7 +600,11 @@ BOOL WINAPI SetupIterateCabinetW(PCWSTR CabinetFile, DWORD Reserved,
|
|||
if (!LoadCABINETDll())
|
||||
return FALSE;
|
||||
|
||||
if (!CabinetFile) return FALSE;
|
||||
if (!CabinetFile)
|
||||
{
|
||||
SetLastError(ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
memset(&my_hsc, 0, sizeof(SC_HSC_W));
|
||||
|
||||
|
|
|
@ -485,8 +485,8 @@ static BOOL create_icon_bitmaps( const BITMAPINFO *bmi, int width, int height,
|
|||
else
|
||||
{
|
||||
if (!(*mask = CreateBitmap( width, height, 1, 1, NULL ))) goto done;
|
||||
if (!(*color = CreateBitmap( width, height, GetDeviceCaps( screen_dc, PLANES ),
|
||||
GetDeviceCaps( screen_dc, BITSPIXEL ), NULL )))
|
||||
if (!(*color = CreateBitmap( width, height, bmi->bmiHeader.biPlanes,
|
||||
bmi->bmiHeader.biBitCount, NULL )))
|
||||
{
|
||||
DeleteObject( *mask );
|
||||
goto done;
|
||||
|
@ -1475,10 +1475,29 @@ HICON WINAPI CreateIconIndirect(PICONINFO iconinfo)
|
|||
height = bmpXor.bmHeight;
|
||||
if (bmpXor.bmPlanes * bmpXor.bmBitsPixel != 1)
|
||||
{
|
||||
color = CreateCompatibleBitmap( screen_dc, width, height );
|
||||
color = CreateBitmap( width, height, bmpXor.bmPlanes, bmpXor.bmBitsPixel, NULL );
|
||||
if(!color)
|
||||
{
|
||||
ERR("Unable to create color bitmap!\n");
|
||||
return NULL;
|
||||
}
|
||||
mask = CreateBitmap( width, height, 1, 1, NULL );
|
||||
if(!mask)
|
||||
{
|
||||
ERR("Unable to create mask bitmap!\n");
|
||||
DeleteObject(color);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
else mask = CreateBitmap( width, height * 2, 1, 1, NULL );
|
||||
else
|
||||
{
|
||||
mask = CreateBitmap( width, height * 2, 1, 1, NULL );
|
||||
if(!mask)
|
||||
{
|
||||
ERR("Unable to create mask bitmap!\n");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -8,6 +8,11 @@ extern "C" {
|
|||
#pragma warning(push)
|
||||
#pragma warning(disable:4201)
|
||||
#endif
|
||||
|
||||
#if !defined(_WIN64)
|
||||
#include <pshpack1.h>
|
||||
#endif
|
||||
|
||||
#define WINSHELLAPI DECLSPEC_IMPORT
|
||||
#define ABE_LEFT 0
|
||||
#define ABE_TOP 1
|
||||
|
@ -160,7 +165,7 @@ typedef struct _SHCREATEPROCESSINFOW
|
|||
|
||||
typedef WORD FILEOP_FLAGS;
|
||||
typedef WORD PRINTEROP_FLAGS;
|
||||
#include <pshpack1.h>
|
||||
|
||||
typedef struct _AppBarData {
|
||||
DWORD cbSize;
|
||||
HWND hWnd;
|
||||
|
@ -330,7 +335,6 @@ typedef struct _SHNAMEMAPPINGW {
|
|||
int cchOldPath;
|
||||
int cchNewPath;
|
||||
} SHNAMEMAPPINGW, *LPSHNAMEMAPPINGW;
|
||||
#include <poppack.h>
|
||||
|
||||
#define SHERB_NOCONFIRMATION 0x1
|
||||
#define SHERB_NOPROGRESSUI 0x2
|
||||
|
@ -440,6 +444,11 @@ typedef LPSHNAMEMAPPINGA LPSHNAMEMAPPING;
|
|||
#define SHEmptyRecycleBin SHEmptyRecycleBinA
|
||||
#define SHGetNewLinkInfo SHGetNewLinkInfoA
|
||||
#endif
|
||||
|
||||
#if !defined(_WIN64)
|
||||
#include <poppack.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
|
|
|
@ -1715,7 +1715,7 @@ typedef struct tagLOGBRUSH32 {
|
|||
typedef struct tagEMRCREATEBRUSHINDIRECT {
|
||||
EMR emr;
|
||||
DWORD ihBrush;
|
||||
LOGBRUSH lb;
|
||||
LOGBRUSH32 lb;
|
||||
} EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT;
|
||||
typedef LONG LCSCSTYPE;
|
||||
typedef LONG LCSGAMUTMATCH;
|
||||
|
@ -1897,11 +1897,11 @@ typedef struct tagEMREXTCREATEFONTINDIRECTW {
|
|||
EXTLOGFONTW elfw;
|
||||
} EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW;
|
||||
typedef struct tagEXTLOGPEN {
|
||||
UINT elpPenStyle;
|
||||
UINT elpWidth;
|
||||
DWORD elpPenStyle;
|
||||
DWORD elpWidth;
|
||||
UINT elpBrushStyle;
|
||||
COLORREF elpColor;
|
||||
LONG elpHatch;
|
||||
ULONG_PTR elpHatch;
|
||||
DWORD elpNumEntries;
|
||||
DWORD elpStyleEntry[1];
|
||||
} EXTLOGPEN,*PEXTLOGPEN,*LPEXTLOGPEN,*NPEXTLOGPEN;
|
||||
|
|
|
@ -13,7 +13,7 @@ extern "C" {
|
|||
#ifdef _MSC_VER
|
||||
#define WS2TCPIP_INLINE __inline
|
||||
#else
|
||||
#define WS2TCPIP_INLINE extern inline
|
||||
#define WS2TCPIP_INLINE static inline
|
||||
#endif
|
||||
|
||||
#include <in6addr.h>
|
||||
|
|
|
@ -24,7 +24,7 @@ extern "C" {
|
|||
#ifdef _MSC_VER
|
||||
#define WS2TCPIP_INLINE __inline
|
||||
#else
|
||||
#define WS2TCPIP_INLINE extern inline
|
||||
#define WS2TCPIP_INLINE static inline
|
||||
#endif
|
||||
|
||||
/* getaddrinfo error codes */
|
||||
|
|
445
include/reactos/libs/libtiff/rosdiff.patch
Normal file
445
include/reactos/libs/libtiff/rosdiff.patch
Normal file
|
@ -0,0 +1,445 @@
|
|||
Index: tiffio.h
|
||||
===================================================================
|
||||
--- tiffio.h (revision 48037)
|
||||
+++ tiffio.h (working copy)
|
||||
@@ -27,6 +27,30 @@
|
||||
#ifndef _TIFFIO_
|
||||
#define _TIFFIO_
|
||||
|
||||
+#ifndef __GNUC__
|
||||
+# define __DLL_IMPORT__ __declspec(dllimport)
|
||||
+# define __DLL_EXPORT__ __declspec(dllexport)
|
||||
+#else
|
||||
+# define __DLL_IMPORT__ __attribute__((dllimport)) extern
|
||||
+# define __DLL_EXPORT__ __attribute__((dllexport)) extern
|
||||
+#endif
|
||||
+
|
||||
+#if (defined __WIN32__) || (defined _WIN32)
|
||||
+# ifdef BUILD_LIBTIFF_DLL
|
||||
+# define LIBTIFF_DLL_IMPEXP __DLL_EXPORT__
|
||||
+# elif defined(LIBTIFF_STATIC)
|
||||
+# define LIBTIFF_DLL_IMPEXP
|
||||
+# elif defined (USE_LIBTIFF_DLL)
|
||||
+# define LIBTIFF_DLL_IMPEXP __DLL_IMPORT__
|
||||
+# elif defined (USE_LIBTIFF_STATIC)
|
||||
+# define LIBTIFF_DLL_IMPEXP
|
||||
+# else /* assume USE_LIBTIFF_DLL */
|
||||
+# define LIBTIFF_DLL_IMPEXP __DLL_IMPORT__
|
||||
+# endif
|
||||
+#else /* __WIN32__ */
|
||||
+# define LIBTIFF_DLL_IMPEXP
|
||||
+#endif
|
||||
+
|
||||
/*
|
||||
* TIFF I/O Library Definitions.
|
||||
*/
|
||||
@@ -80,10 +104,20 @@
|
||||
*/
|
||||
|
||||
#if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
|
||||
+# define BINMODE "b"
|
||||
# if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILEIO)
|
||||
# define AVOID_WIN32_FILEIO
|
||||
# endif
|
||||
-#endif
|
||||
+# include <fcntl.h>
|
||||
+# include <io.h>
|
||||
+# ifdef SET_BINARY
|
||||
+# undef SET_BINARY
|
||||
+# endif /* SET_BINARY */
|
||||
+# define SET_BINARY(f) do {if (!_isatty(f)) _setmode(f,_O_BINARY);} while (0)
|
||||
+#else /* Windows */
|
||||
+# define BINMODE
|
||||
+# define SET_BINARY(f) (void)0
|
||||
+#endif /* Windows */
|
||||
|
||||
#if defined(USE_WIN32_FILEIO)
|
||||
# define VC_EXTRALEAN
|
||||
@@ -268,30 +302,30 @@
|
||||
typedef void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t);
|
||||
typedef void (*TIFFExtendProc)(TIFF*);
|
||||
|
||||
-extern const char* TIFFGetVersion(void);
|
||||
+LIBTIFF_DLL_IMPEXP const char* TIFFGetVersion(void);
|
||||
|
||||
-extern const TIFFCodec* TIFFFindCODEC(uint16);
|
||||
-extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
|
||||
-extern void TIFFUnRegisterCODEC(TIFFCodec*);
|
||||
-extern int TIFFIsCODECConfigured(uint16);
|
||||
-extern TIFFCodec* TIFFGetConfiguredCODECs(void);
|
||||
+LIBTIFF_DLL_IMPEXP const TIFFCodec* TIFFFindCODEC(uint16);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFUnRegisterCODEC(TIFFCodec*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFIsCODECConfigured(uint16);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFCodec* TIFFGetConfiguredCODECs(void);
|
||||
|
||||
/*
|
||||
* Auxiliary functions.
|
||||
*/
|
||||
|
||||
-extern tdata_t _TIFFmalloc(tsize_t);
|
||||
-extern tdata_t _TIFFrealloc(tdata_t, tsize_t);
|
||||
-extern void _TIFFmemset(tdata_t, int, tsize_t);
|
||||
-extern void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
|
||||
-extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
|
||||
-extern void _TIFFfree(tdata_t);
|
||||
+LIBTIFF_DLL_IMPEXP tdata_t _TIFFmalloc(tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tdata_t _TIFFrealloc(tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP void _TIFFmemset(tdata_t, int, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP void _TIFFfree(tdata_t);
|
||||
|
||||
/*
|
||||
** Stuff, related to tag handling and creating custom tags.
|
||||
*/
|
||||
-extern int TIFFGetTagListCount( TIFF * );
|
||||
-extern ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFGetTagListCount( TIFF * );
|
||||
+LIBTIFF_DLL_IMPEXP ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
|
||||
|
||||
#define TIFF_ANY TIFF_NOTYPE /* for field descriptor searching */
|
||||
#define TIFF_VARIABLE -1 /* marker for variable length tags */
|
||||
@@ -317,12 +351,12 @@
|
||||
void *value;
|
||||
} TIFFTagValue;
|
||||
|
||||
-extern void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
|
||||
-extern const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
|
||||
-extern const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
|
||||
+LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
|
||||
+LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
|
||||
TIFFDataType);
|
||||
-extern const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
|
||||
-extern const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
|
||||
+LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
|
||||
+LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
|
||||
|
||||
typedef int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list);
|
||||
typedef int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list);
|
||||
@@ -334,180 +368,180 @@
|
||||
TIFFPrintMethod printdir; /* directory print routine */
|
||||
} TIFFTagMethods;
|
||||
|
||||
-extern TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
|
||||
-extern void *TIFFGetClientInfo( TIFF *, const char * );
|
||||
-extern void TIFFSetClientInfo( TIFF *, void *, const char * );
|
||||
+LIBTIFF_DLL_IMPEXP TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
|
||||
+LIBTIFF_DLL_IMPEXP void *TIFFGetClientInfo( TIFF *, const char * );
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSetClientInfo( TIFF *, void *, const char * );
|
||||
|
||||
-extern void TIFFCleanup(TIFF*);
|
||||
-extern void TIFFClose(TIFF*);
|
||||
-extern int TIFFFlush(TIFF*);
|
||||
-extern int TIFFFlushData(TIFF*);
|
||||
-extern int TIFFGetField(TIFF*, ttag_t, ...);
|
||||
-extern int TIFFVGetField(TIFF*, ttag_t, va_list);
|
||||
-extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
|
||||
-extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
|
||||
-extern int TIFFReadDirectory(TIFF*);
|
||||
-extern int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFCleanup(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFClose(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFFlush(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFFlushData(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFGetField(TIFF*, ttag_t, ...);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFVGetField(TIFF*, ttag_t, va_list);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadDirectory(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
|
||||
size_t);
|
||||
-extern int TIFFReadEXIFDirectory(TIFF*, toff_t);
|
||||
-extern tsize_t TIFFScanlineSize(TIFF*);
|
||||
-extern tsize_t TIFFOldScanlineSize(TIFF*);
|
||||
-extern tsize_t TIFFNewScanlineSize(TIFF*);
|
||||
-extern tsize_t TIFFRasterScanlineSize(TIFF*);
|
||||
-extern tsize_t TIFFStripSize(TIFF*);
|
||||
-extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
|
||||
-extern tsize_t TIFFVStripSize(TIFF*, uint32);
|
||||
-extern tsize_t TIFFTileRowSize(TIFF*);
|
||||
-extern tsize_t TIFFTileSize(TIFF*);
|
||||
-extern tsize_t TIFFVTileSize(TIFF*, uint32);
|
||||
-extern uint32 TIFFDefaultStripSize(TIFF*, uint32);
|
||||
-extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
|
||||
-extern int TIFFFileno(TIFF*);
|
||||
-extern int TIFFSetFileno(TIFF*, int);
|
||||
-extern thandle_t TIFFClientdata(TIFF*);
|
||||
-extern thandle_t TIFFSetClientdata(TIFF*, thandle_t);
|
||||
-extern int TIFFGetMode(TIFF*);
|
||||
-extern int TIFFSetMode(TIFF*, int);
|
||||
-extern int TIFFIsTiled(TIFF*);
|
||||
-extern int TIFFIsByteSwapped(TIFF*);
|
||||
-extern int TIFFIsUpSampled(TIFF*);
|
||||
-extern int TIFFIsMSB2LSB(TIFF*);
|
||||
-extern int TIFFIsBigEndian(TIFF*);
|
||||
-extern TIFFReadWriteProc TIFFGetReadProc(TIFF*);
|
||||
-extern TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
|
||||
-extern TIFFSeekProc TIFFGetSeekProc(TIFF*);
|
||||
-extern TIFFCloseProc TIFFGetCloseProc(TIFF*);
|
||||
-extern TIFFSizeProc TIFFGetSizeProc(TIFF*);
|
||||
-extern TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
|
||||
-extern TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
|
||||
-extern uint32 TIFFCurrentRow(TIFF*);
|
||||
-extern tdir_t TIFFCurrentDirectory(TIFF*);
|
||||
-extern tdir_t TIFFNumberOfDirectories(TIFF*);
|
||||
-extern uint32 TIFFCurrentDirOffset(TIFF*);
|
||||
-extern tstrip_t TIFFCurrentStrip(TIFF*);
|
||||
-extern ttile_t TIFFCurrentTile(TIFF*);
|
||||
-extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
-extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
-extern int TIFFSetupStrips(TIFF *);
|
||||
-extern int TIFFWriteCheck(TIFF*, int, const char *);
|
||||
-extern void TIFFFreeDirectory(TIFF*);
|
||||
-extern int TIFFCreateDirectory(TIFF*);
|
||||
-extern int TIFFLastDirectory(TIFF*);
|
||||
-extern int TIFFSetDirectory(TIFF*, tdir_t);
|
||||
-extern int TIFFSetSubDirectory(TIFF*, uint32);
|
||||
-extern int TIFFUnlinkDirectory(TIFF*, tdir_t);
|
||||
-extern int TIFFSetField(TIFF*, ttag_t, ...);
|
||||
-extern int TIFFVSetField(TIFF*, ttag_t, va_list);
|
||||
-extern int TIFFWriteDirectory(TIFF *);
|
||||
-extern int TIFFCheckpointDirectory(TIFF *);
|
||||
-extern int TIFFRewriteDirectory(TIFF *);
|
||||
-extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadEXIFDirectory(TIFF*, toff_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFScanlineSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFOldScanlineSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFNewScanlineSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFRasterScanlineSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFStripSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFVStripSize(TIFF*, uint32);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFTileRowSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFTileSize(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFVTileSize(TIFF*, uint32);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 TIFFDefaultStripSize(TIFF*, uint32);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFFileno(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFSetFileno(TIFF*, int);
|
||||
+LIBTIFF_DLL_IMPEXP thandle_t TIFFClientdata(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP thandle_t TIFFSetClientdata(TIFF*, thandle_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFGetMode(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFSetMode(TIFF*, int);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFIsTiled(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFIsByteSwapped(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFIsUpSampled(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFIsMSB2LSB(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFIsBigEndian(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFReadWriteProc TIFFGetReadProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFSeekProc TIFFGetSeekProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFCloseProc TIFFGetCloseProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFSizeProc TIFFGetSizeProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 TIFFCurrentRow(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tdir_t TIFFCurrentDirectory(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tdir_t TIFFNumberOfDirectories(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 TIFFCurrentDirOffset(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tstrip_t TIFFCurrentStrip(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP ttile_t TIFFCurrentTile(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFSetupStrips(TIFF *);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFWriteCheck(TIFF*, int, const char *);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFFreeDirectory(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFCreateDirectory(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFLastDirectory(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFSetDirectory(TIFF*, tdir_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFSetSubDirectory(TIFF*, uint32);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFUnlinkDirectory(TIFF*, tdir_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFSetField(TIFF*, ttag_t, ...);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFVSetField(TIFF*, ttag_t, va_list);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFWriteDirectory(TIFF *);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFCheckpointDirectory(TIFF *);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFRewriteDirectory(TIFF *);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
|
||||
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
||||
-extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
|
||||
-extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
-extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
-extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
|
||||
-extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
|
||||
int = ORIENTATION_BOTLEFT, int = 0);
|
||||
#else
|
||||
-extern void TIFFPrintDirectory(TIFF*, FILE*, long);
|
||||
-extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
-extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
-extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
|
||||
-extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFPrintDirectory(TIFF*, FILE*, long);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
|
||||
#endif
|
||||
|
||||
-extern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
|
||||
-extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
|
||||
-extern int TIFFRGBAImageOK(TIFF*, char [1024]);
|
||||
-extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
|
||||
-extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
|
||||
-extern void TIFFRGBAImageEnd(TIFFRGBAImage*);
|
||||
-extern TIFF* TIFFOpen(const char*, const char*);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFRGBAImageOK(TIFF*, char [1024]);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFRGBAImageEnd(TIFFRGBAImage*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFF* TIFFOpen(const char*, const char*);
|
||||
# ifdef __WIN32__
|
||||
-extern TIFF* TIFFOpenW(const wchar_t*, const char*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFF* TIFFOpenW(const wchar_t*, const char*);
|
||||
# endif /* __WIN32__ */
|
||||
-extern TIFF* TIFFFdOpen(int, const char*, const char*);
|
||||
-extern TIFF* TIFFClientOpen(const char*, const char*,
|
||||
+LIBTIFF_DLL_IMPEXP TIFF* TIFFFdOpen(int, const char*, const char*);
|
||||
+LIBTIFF_DLL_IMPEXP TIFF* TIFFClientOpen(const char*, const char*,
|
||||
thandle_t,
|
||||
TIFFReadWriteProc, TIFFReadWriteProc,
|
||||
TIFFSeekProc, TIFFCloseProc,
|
||||
TIFFSizeProc,
|
||||
TIFFMapFileProc, TIFFUnmapFileProc);
|
||||
-extern const char* TIFFFileName(TIFF*);
|
||||
-extern const char* TIFFSetFileName(TIFF*, const char *);
|
||||
-extern void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
-extern void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
-extern void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
-extern void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
-extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
|
||||
-extern TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
|
||||
-extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
|
||||
-extern TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
|
||||
-extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
|
||||
-extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
-extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
-extern ttile_t TIFFNumberOfTiles(TIFF*);
|
||||
-extern tsize_t TIFFReadTile(TIFF*,
|
||||
+LIBTIFF_DLL_IMPEXP const char* TIFFFileName(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP const char* TIFFSetFileName(TIFF*, const char *);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
+LIBTIFF_DLL_IMPEXP TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
|
||||
+LIBTIFF_DLL_IMPEXP TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
|
||||
+LIBTIFF_DLL_IMPEXP ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
+LIBTIFF_DLL_IMPEXP ttile_t TIFFNumberOfTiles(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFReadTile(TIFF*,
|
||||
tdata_t, uint32, uint32, uint32, tsample_t);
|
||||
-extern tsize_t TIFFWriteTile(TIFF*,
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteTile(TIFF*,
|
||||
tdata_t, uint32, uint32, uint32, tsample_t);
|
||||
-extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
|
||||
-extern tstrip_t TIFFNumberOfStrips(TIFF*);
|
||||
-extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
-extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
-extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
|
||||
-extern void TIFFSetWriteOffset(TIFF*, toff_t);
|
||||
-extern void TIFFSwabShort(uint16*);
|
||||
-extern void TIFFSwabLong(uint32*);
|
||||
-extern void TIFFSwabDouble(double*);
|
||||
-extern void TIFFSwabArrayOfShort(uint16*, unsigned long);
|
||||
-extern void TIFFSwabArrayOfTriples(uint8*, unsigned long);
|
||||
-extern void TIFFSwabArrayOfLong(uint32*, unsigned long);
|
||||
-extern void TIFFSwabArrayOfDouble(double*, unsigned long);
|
||||
-extern void TIFFReverseBits(unsigned char *, unsigned long);
|
||||
-extern const unsigned char* TIFFGetBitRevTable(int);
|
||||
+LIBTIFF_DLL_IMPEXP tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
|
||||
+LIBTIFF_DLL_IMPEXP tstrip_t TIFFNumberOfStrips(TIFF*);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSetWriteOffset(TIFF*, toff_t);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabShort(uint16*);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabLong(uint32*);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabDouble(double*);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfShort(uint16*, unsigned long);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfTriples(uint8*, unsigned long);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfLong(uint32*, unsigned long);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfDouble(double*, unsigned long);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFReverseBits(unsigned char *, unsigned long);
|
||||
+LIBTIFF_DLL_IMPEXP const unsigned char* TIFFGetBitRevTable(int);
|
||||
|
||||
#ifdef LOGLUV_PUBLIC
|
||||
#define U_NEU 0.210526316
|
||||
#define V_NEU 0.473684211
|
||||
#define UVSCALE 410.
|
||||
-extern double LogL16toY(int);
|
||||
-extern double LogL10toY(int);
|
||||
-extern void XYZtoRGB24(float*, uint8*);
|
||||
-extern int uv_decode(double*, double*, int);
|
||||
-extern void LogLuv24toXYZ(uint32, float*);
|
||||
-extern void LogLuv32toXYZ(uint32, float*);
|
||||
+LIBTIFF_DLL_IMPEXP double LogL16toY(int);
|
||||
+LIBTIFF_DLL_IMPEXP double LogL10toY(int);
|
||||
+LIBTIFF_DLL_IMPEXP void XYZtoRGB24(float*, uint8*);
|
||||
+LIBTIFF_DLL_IMPEXP int uv_decode(double*, double*, int);
|
||||
+LIBTIFF_DLL_IMPEXP void LogLuv24toXYZ(uint32, float*);
|
||||
+LIBTIFF_DLL_IMPEXP void LogLuv32toXYZ(uint32, float*);
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
||||
-extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
-extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
-extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
|
||||
-extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
-extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
+LIBTIFF_DLL_IMPEXP int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
+LIBTIFF_DLL_IMPEXP int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
+LIBTIFF_DLL_IMPEXP int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
#else
|
||||
-extern int LogL16fromY(double, int);
|
||||
-extern int LogL10fromY(double, int);
|
||||
-extern int uv_encode(double, double, int);
|
||||
-extern uint32 LogLuv24fromXYZ(float*, int);
|
||||
-extern uint32 LogLuv32fromXYZ(float*, int);
|
||||
+LIBTIFF_DLL_IMPEXP int LogL16fromY(double, int);
|
||||
+LIBTIFF_DLL_IMPEXP int LogL10fromY(double, int);
|
||||
+LIBTIFF_DLL_IMPEXP int uv_encode(double, double, int);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 LogLuv24fromXYZ(float*, int);
|
||||
+LIBTIFF_DLL_IMPEXP uint32 LogLuv32fromXYZ(float*, int);
|
||||
#endif
|
||||
#endif /* LOGLUV_PUBLIC */
|
||||
|
||||
-extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
|
||||
-extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
|
||||
float *, float *, float *);
|
||||
-extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
|
||||
uint32 *, uint32 *, uint32 *);
|
||||
|
||||
-extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
|
||||
-extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
|
||||
+LIBTIFF_DLL_IMPEXP int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
|
||||
+LIBTIFF_DLL_IMPEXP void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
|
||||
uint32 *, uint32 *, uint32 *);
|
||||
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
|
@ -27,6 +27,30 @@
|
|||
#ifndef _TIFFIO_
|
||||
#define _TIFFIO_
|
||||
|
||||
#ifndef __GNUC__
|
||||
# define __DLL_IMPORT__ __declspec(dllimport)
|
||||
# define __DLL_EXPORT__ __declspec(dllexport)
|
||||
#else
|
||||
# define __DLL_IMPORT__ __attribute__((dllimport)) extern
|
||||
# define __DLL_EXPORT__ __attribute__((dllexport)) extern
|
||||
#endif
|
||||
|
||||
#if (defined __WIN32__) || (defined _WIN32)
|
||||
# ifdef BUILD_LIBTIFF_DLL
|
||||
# define LIBTIFF_DLL_IMPEXP __DLL_EXPORT__
|
||||
# elif defined(LIBTIFF_STATIC)
|
||||
# define LIBTIFF_DLL_IMPEXP
|
||||
# elif defined (USE_LIBTIFF_DLL)
|
||||
# define LIBTIFF_DLL_IMPEXP __DLL_IMPORT__
|
||||
# elif defined (USE_LIBTIFF_STATIC)
|
||||
# define LIBTIFF_DLL_IMPEXP
|
||||
# else /* assume USE_LIBTIFF_DLL */
|
||||
# define LIBTIFF_DLL_IMPEXP __DLL_IMPORT__
|
||||
# endif
|
||||
#else /* __WIN32__ */
|
||||
# define LIBTIFF_DLL_IMPEXP
|
||||
#endif
|
||||
|
||||
/*
|
||||
* TIFF I/O Library Definitions.
|
||||
*/
|
||||
|
@ -80,10 +104,20 @@ typedef uint32 toff_t; /* file offset */
|
|||
*/
|
||||
|
||||
#if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
|
||||
# define BINMODE "b"
|
||||
# if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILEIO)
|
||||
# define AVOID_WIN32_FILEIO
|
||||
# endif
|
||||
#endif
|
||||
# include <fcntl.h>
|
||||
# include <io.h>
|
||||
# ifdef SET_BINARY
|
||||
# undef SET_BINARY
|
||||
# endif /* SET_BINARY */
|
||||
# define SET_BINARY(f) do {if (!_isatty(f)) _setmode(f,_O_BINARY);} while (0)
|
||||
#else /* Windows */
|
||||
# define BINMODE
|
||||
# define SET_BINARY(f) (void)0
|
||||
#endif /* Windows */
|
||||
|
||||
#if defined(USE_WIN32_FILEIO)
|
||||
# define VC_EXTRALEAN
|
||||
|
@ -268,30 +302,30 @@ typedef int (*TIFFMapFileProc)(thandle_t, tdata_t*, toff_t*);
|
|||
typedef void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t);
|
||||
typedef void (*TIFFExtendProc)(TIFF*);
|
||||
|
||||
extern const char* TIFFGetVersion(void);
|
||||
LIBTIFF_DLL_IMPEXP const char* TIFFGetVersion(void);
|
||||
|
||||
extern const TIFFCodec* TIFFFindCODEC(uint16);
|
||||
extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
|
||||
extern void TIFFUnRegisterCODEC(TIFFCodec*);
|
||||
extern int TIFFIsCODECConfigured(uint16);
|
||||
extern TIFFCodec* TIFFGetConfiguredCODECs(void);
|
||||
LIBTIFF_DLL_IMPEXP const TIFFCodec* TIFFFindCODEC(uint16);
|
||||
LIBTIFF_DLL_IMPEXP TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFUnRegisterCODEC(TIFFCodec*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFIsCODECConfigured(uint16);
|
||||
LIBTIFF_DLL_IMPEXP TIFFCodec* TIFFGetConfiguredCODECs(void);
|
||||
|
||||
/*
|
||||
* Auxiliary functions.
|
||||
*/
|
||||
|
||||
extern tdata_t _TIFFmalloc(tsize_t);
|
||||
extern tdata_t _TIFFrealloc(tdata_t, tsize_t);
|
||||
extern void _TIFFmemset(tdata_t, int, tsize_t);
|
||||
extern void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
|
||||
extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
|
||||
extern void _TIFFfree(tdata_t);
|
||||
LIBTIFF_DLL_IMPEXP tdata_t _TIFFmalloc(tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tdata_t _TIFFrealloc(tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP void _TIFFmemset(tdata_t, int, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP void _TIFFfree(tdata_t);
|
||||
|
||||
/*
|
||||
** Stuff, related to tag handling and creating custom tags.
|
||||
*/
|
||||
extern int TIFFGetTagListCount( TIFF * );
|
||||
extern ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
|
||||
LIBTIFF_DLL_IMPEXP int TIFFGetTagListCount( TIFF * );
|
||||
LIBTIFF_DLL_IMPEXP ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
|
||||
|
||||
#define TIFF_ANY TIFF_NOTYPE /* for field descriptor searching */
|
||||
#define TIFF_VARIABLE -1 /* marker for variable length tags */
|
||||
|
@ -317,12 +351,12 @@ typedef struct _TIFFTagValue {
|
|||
void *value;
|
||||
} TIFFTagValue;
|
||||
|
||||
extern void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
|
||||
extern const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
|
||||
extern const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
|
||||
LIBTIFF_DLL_IMPEXP void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
|
||||
LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
|
||||
LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
|
||||
TIFFDataType);
|
||||
extern const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
|
||||
extern const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
|
||||
LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
|
||||
LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
|
||||
|
||||
typedef int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list);
|
||||
typedef int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list);
|
||||
|
@ -334,180 +368,180 @@ typedef struct {
|
|||
TIFFPrintMethod printdir; /* directory print routine */
|
||||
} TIFFTagMethods;
|
||||
|
||||
extern TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
|
||||
extern void *TIFFGetClientInfo( TIFF *, const char * );
|
||||
extern void TIFFSetClientInfo( TIFF *, void *, const char * );
|
||||
LIBTIFF_DLL_IMPEXP TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
|
||||
LIBTIFF_DLL_IMPEXP void *TIFFGetClientInfo( TIFF *, const char * );
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSetClientInfo( TIFF *, void *, const char * );
|
||||
|
||||
extern void TIFFCleanup(TIFF*);
|
||||
extern void TIFFClose(TIFF*);
|
||||
extern int TIFFFlush(TIFF*);
|
||||
extern int TIFFFlushData(TIFF*);
|
||||
extern int TIFFGetField(TIFF*, ttag_t, ...);
|
||||
extern int TIFFVGetField(TIFF*, ttag_t, va_list);
|
||||
extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
|
||||
extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
|
||||
extern int TIFFReadDirectory(TIFF*);
|
||||
extern int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
|
||||
LIBTIFF_DLL_IMPEXP void TIFFCleanup(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFClose(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFFlush(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFFlushData(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFGetField(TIFF*, ttag_t, ...);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFVGetField(TIFF*, ttag_t, va_list);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadDirectory(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
|
||||
size_t);
|
||||
extern int TIFFReadEXIFDirectory(TIFF*, toff_t);
|
||||
extern tsize_t TIFFScanlineSize(TIFF*);
|
||||
extern tsize_t TIFFOldScanlineSize(TIFF*);
|
||||
extern tsize_t TIFFNewScanlineSize(TIFF*);
|
||||
extern tsize_t TIFFRasterScanlineSize(TIFF*);
|
||||
extern tsize_t TIFFStripSize(TIFF*);
|
||||
extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
|
||||
extern tsize_t TIFFVStripSize(TIFF*, uint32);
|
||||
extern tsize_t TIFFTileRowSize(TIFF*);
|
||||
extern tsize_t TIFFTileSize(TIFF*);
|
||||
extern tsize_t TIFFVTileSize(TIFF*, uint32);
|
||||
extern uint32 TIFFDefaultStripSize(TIFF*, uint32);
|
||||
extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
|
||||
extern int TIFFFileno(TIFF*);
|
||||
extern int TIFFSetFileno(TIFF*, int);
|
||||
extern thandle_t TIFFClientdata(TIFF*);
|
||||
extern thandle_t TIFFSetClientdata(TIFF*, thandle_t);
|
||||
extern int TIFFGetMode(TIFF*);
|
||||
extern int TIFFSetMode(TIFF*, int);
|
||||
extern int TIFFIsTiled(TIFF*);
|
||||
extern int TIFFIsByteSwapped(TIFF*);
|
||||
extern int TIFFIsUpSampled(TIFF*);
|
||||
extern int TIFFIsMSB2LSB(TIFF*);
|
||||
extern int TIFFIsBigEndian(TIFF*);
|
||||
extern TIFFReadWriteProc TIFFGetReadProc(TIFF*);
|
||||
extern TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
|
||||
extern TIFFSeekProc TIFFGetSeekProc(TIFF*);
|
||||
extern TIFFCloseProc TIFFGetCloseProc(TIFF*);
|
||||
extern TIFFSizeProc TIFFGetSizeProc(TIFF*);
|
||||
extern TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
|
||||
extern TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
|
||||
extern uint32 TIFFCurrentRow(TIFF*);
|
||||
extern tdir_t TIFFCurrentDirectory(TIFF*);
|
||||
extern tdir_t TIFFNumberOfDirectories(TIFF*);
|
||||
extern uint32 TIFFCurrentDirOffset(TIFF*);
|
||||
extern tstrip_t TIFFCurrentStrip(TIFF*);
|
||||
extern ttile_t TIFFCurrentTile(TIFF*);
|
||||
extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
extern int TIFFSetupStrips(TIFF *);
|
||||
extern int TIFFWriteCheck(TIFF*, int, const char *);
|
||||
extern void TIFFFreeDirectory(TIFF*);
|
||||
extern int TIFFCreateDirectory(TIFF*);
|
||||
extern int TIFFLastDirectory(TIFF*);
|
||||
extern int TIFFSetDirectory(TIFF*, tdir_t);
|
||||
extern int TIFFSetSubDirectory(TIFF*, uint32);
|
||||
extern int TIFFUnlinkDirectory(TIFF*, tdir_t);
|
||||
extern int TIFFSetField(TIFF*, ttag_t, ...);
|
||||
extern int TIFFVSetField(TIFF*, ttag_t, va_list);
|
||||
extern int TIFFWriteDirectory(TIFF *);
|
||||
extern int TIFFCheckpointDirectory(TIFF *);
|
||||
extern int TIFFRewriteDirectory(TIFF *);
|
||||
extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadEXIFDirectory(TIFF*, toff_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFScanlineSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFOldScanlineSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFNewScanlineSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFRasterScanlineSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFStripSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFVStripSize(TIFF*, uint32);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFTileRowSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFTileSize(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFVTileSize(TIFF*, uint32);
|
||||
LIBTIFF_DLL_IMPEXP uint32 TIFFDefaultStripSize(TIFF*, uint32);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFFileno(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFSetFileno(TIFF*, int);
|
||||
LIBTIFF_DLL_IMPEXP thandle_t TIFFClientdata(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP thandle_t TIFFSetClientdata(TIFF*, thandle_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFGetMode(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFSetMode(TIFF*, int);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFIsTiled(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFIsByteSwapped(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFIsUpSampled(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFIsMSB2LSB(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFIsBigEndian(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFReadWriteProc TIFFGetReadProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFSeekProc TIFFGetSeekProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFCloseProc TIFFGetCloseProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFSizeProc TIFFGetSizeProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP uint32 TIFFCurrentRow(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tdir_t TIFFCurrentDirectory(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tdir_t TIFFNumberOfDirectories(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP uint32 TIFFCurrentDirOffset(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tstrip_t TIFFCurrentStrip(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP ttile_t TIFFCurrentTile(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFSetupStrips(TIFF *);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFWriteCheck(TIFF*, int, const char *);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFFreeDirectory(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFCreateDirectory(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFLastDirectory(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFSetDirectory(TIFF*, tdir_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFSetSubDirectory(TIFF*, uint32);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFUnlinkDirectory(TIFF*, tdir_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFSetField(TIFF*, ttag_t, ...);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFVSetField(TIFF*, ttag_t, va_list);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFWriteDirectory(TIFF *);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFCheckpointDirectory(TIFF *);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFRewriteDirectory(TIFF *);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
|
||||
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
||||
extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
|
||||
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
|
||||
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
|
||||
LIBTIFF_DLL_IMPEXP void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
|
||||
int = ORIENTATION_BOTLEFT, int = 0);
|
||||
#else
|
||||
extern void TIFFPrintDirectory(TIFF*, FILE*, long);
|
||||
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
|
||||
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFPrintDirectory(TIFF*, FILE*, long);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
|
||||
#endif
|
||||
|
||||
extern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
|
||||
extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
|
||||
extern int TIFFRGBAImageOK(TIFF*, char [1024]);
|
||||
extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
|
||||
extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
|
||||
extern void TIFFRGBAImageEnd(TIFFRGBAImage*);
|
||||
extern TIFF* TIFFOpen(const char*, const char*);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
|
||||
LIBTIFF_DLL_IMPEXP int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
|
||||
LIBTIFF_DLL_IMPEXP int TIFFRGBAImageOK(TIFF*, char [1024]);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFRGBAImageEnd(TIFFRGBAImage*);
|
||||
LIBTIFF_DLL_IMPEXP TIFF* TIFFOpen(const char*, const char*);
|
||||
# ifdef __WIN32__
|
||||
extern TIFF* TIFFOpenW(const wchar_t*, const char*);
|
||||
LIBTIFF_DLL_IMPEXP TIFF* TIFFOpenW(const wchar_t*, const char*);
|
||||
# endif /* __WIN32__ */
|
||||
extern TIFF* TIFFFdOpen(int, const char*, const char*);
|
||||
extern TIFF* TIFFClientOpen(const char*, const char*,
|
||||
LIBTIFF_DLL_IMPEXP TIFF* TIFFFdOpen(int, const char*, const char*);
|
||||
LIBTIFF_DLL_IMPEXP TIFF* TIFFClientOpen(const char*, const char*,
|
||||
thandle_t,
|
||||
TIFFReadWriteProc, TIFFReadWriteProc,
|
||||
TIFFSeekProc, TIFFCloseProc,
|
||||
TIFFSizeProc,
|
||||
TIFFMapFileProc, TIFFUnmapFileProc);
|
||||
extern const char* TIFFFileName(TIFF*);
|
||||
extern const char* TIFFSetFileName(TIFF*, const char *);
|
||||
extern void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
extern void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
extern void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
extern void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
|
||||
extern TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
|
||||
extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
|
||||
extern TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
|
||||
extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
|
||||
extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
extern ttile_t TIFFNumberOfTiles(TIFF*);
|
||||
extern tsize_t TIFFReadTile(TIFF*,
|
||||
LIBTIFF_DLL_IMPEXP const char* TIFFFileName(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP const char* TIFFSetFileName(TIFF*, const char *);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
LIBTIFF_DLL_IMPEXP void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
LIBTIFF_DLL_IMPEXP void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||
LIBTIFF_DLL_IMPEXP void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||
LIBTIFF_DLL_IMPEXP TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
|
||||
LIBTIFF_DLL_IMPEXP TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
|
||||
LIBTIFF_DLL_IMPEXP TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
|
||||
LIBTIFF_DLL_IMPEXP TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
|
||||
LIBTIFF_DLL_IMPEXP TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
|
||||
LIBTIFF_DLL_IMPEXP ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||
LIBTIFF_DLL_IMPEXP ttile_t TIFFNumberOfTiles(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFReadTile(TIFF*,
|
||||
tdata_t, uint32, uint32, uint32, tsample_t);
|
||||
extern tsize_t TIFFWriteTile(TIFF*,
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteTile(TIFF*,
|
||||
tdata_t, uint32, uint32, uint32, tsample_t);
|
||||
extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
|
||||
extern tstrip_t TIFFNumberOfStrips(TIFF*);
|
||||
extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
|
||||
extern void TIFFSetWriteOffset(TIFF*, toff_t);
|
||||
extern void TIFFSwabShort(uint16*);
|
||||
extern void TIFFSwabLong(uint32*);
|
||||
extern void TIFFSwabDouble(double*);
|
||||
extern void TIFFSwabArrayOfShort(uint16*, unsigned long);
|
||||
extern void TIFFSwabArrayOfTriples(uint8*, unsigned long);
|
||||
extern void TIFFSwabArrayOfLong(uint32*, unsigned long);
|
||||
extern void TIFFSwabArrayOfDouble(double*, unsigned long);
|
||||
extern void TIFFReverseBits(unsigned char *, unsigned long);
|
||||
extern const unsigned char* TIFFGetBitRevTable(int);
|
||||
LIBTIFF_DLL_IMPEXP tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
|
||||
LIBTIFF_DLL_IMPEXP tstrip_t TIFFNumberOfStrips(TIFF*);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||
LIBTIFF_DLL_IMPEXP int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSetWriteOffset(TIFF*, toff_t);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabShort(uint16*);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabLong(uint32*);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabDouble(double*);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfShort(uint16*, unsigned long);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfTriples(uint8*, unsigned long);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfLong(uint32*, unsigned long);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfDouble(double*, unsigned long);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFReverseBits(unsigned char *, unsigned long);
|
||||
LIBTIFF_DLL_IMPEXP const unsigned char* TIFFGetBitRevTable(int);
|
||||
|
||||
#ifdef LOGLUV_PUBLIC
|
||||
#define U_NEU 0.210526316
|
||||
#define V_NEU 0.473684211
|
||||
#define UVSCALE 410.
|
||||
extern double LogL16toY(int);
|
||||
extern double LogL10toY(int);
|
||||
extern void XYZtoRGB24(float*, uint8*);
|
||||
extern int uv_decode(double*, double*, int);
|
||||
extern void LogLuv24toXYZ(uint32, float*);
|
||||
extern void LogLuv32toXYZ(uint32, float*);
|
||||
LIBTIFF_DLL_IMPEXP double LogL16toY(int);
|
||||
LIBTIFF_DLL_IMPEXP double LogL10toY(int);
|
||||
LIBTIFF_DLL_IMPEXP void XYZtoRGB24(float*, uint8*);
|
||||
LIBTIFF_DLL_IMPEXP int uv_decode(double*, double*, int);
|
||||
LIBTIFF_DLL_IMPEXP void LogLuv24toXYZ(uint32, float*);
|
||||
LIBTIFF_DLL_IMPEXP void LogLuv32toXYZ(uint32, float*);
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
||||
extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
|
||||
extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
LIBTIFF_DLL_IMPEXP int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
LIBTIFF_DLL_IMPEXP int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
|
||||
LIBTIFF_DLL_IMPEXP int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
|
||||
LIBTIFF_DLL_IMPEXP uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
LIBTIFF_DLL_IMPEXP uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||
#else
|
||||
extern int LogL16fromY(double, int);
|
||||
extern int LogL10fromY(double, int);
|
||||
extern int uv_encode(double, double, int);
|
||||
extern uint32 LogLuv24fromXYZ(float*, int);
|
||||
extern uint32 LogLuv32fromXYZ(float*, int);
|
||||
LIBTIFF_DLL_IMPEXP int LogL16fromY(double, int);
|
||||
LIBTIFF_DLL_IMPEXP int LogL10fromY(double, int);
|
||||
LIBTIFF_DLL_IMPEXP int uv_encode(double, double, int);
|
||||
LIBTIFF_DLL_IMPEXP uint32 LogLuv24fromXYZ(float*, int);
|
||||
LIBTIFF_DLL_IMPEXP uint32 LogLuv32fromXYZ(float*, int);
|
||||
#endif
|
||||
#endif /* LOGLUV_PUBLIC */
|
||||
|
||||
extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
|
||||
extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
|
||||
LIBTIFF_DLL_IMPEXP int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
|
||||
float *, float *, float *);
|
||||
extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
|
||||
LIBTIFF_DLL_IMPEXP void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
|
||||
uint32 *, uint32 *, uint32 *);
|
||||
|
||||
extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
|
||||
extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
|
||||
LIBTIFF_DLL_IMPEXP int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
|
||||
LIBTIFF_DLL_IMPEXP void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
|
||||
uint32 *, uint32 *, uint32 *);
|
||||
|
||||
#if defined(c_plusplus) || defined(__cplusplus)
|
||||
|
|
|
@ -491,7 +491,7 @@ ExFreeCacheAwareRundownProtection(IN PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAwar
|
|||
VOID
|
||||
NTAPI
|
||||
ExInitializeRundownProtectionCacheAware(IN PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware,
|
||||
IN ULONG Count)
|
||||
IN SIZE_T Count)
|
||||
{
|
||||
DBG_UNREFERENCED_PARAMETER(RunRefCacheAware);
|
||||
DBG_UNREFERENCED_PARAMETER(Count);
|
||||
|
|
|
@ -316,9 +316,6 @@ KiThreadStartup(PKSYSTEM_ROUTINE SystemRoutine,
|
|||
|
||||
#endif /* __ASM__ */
|
||||
|
||||
#undef KeGetCurrentThread
|
||||
#define _KeGetCurrentThread KeGetCurrentThread
|
||||
|
||||
// HACK
|
||||
extern NTKERNELAPI volatile KSYSTEM_TIME KeTickCount;
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ extern UCHAR MmDisablePagingExecutive;
|
|||
extern ULONG MmLowestPhysicalPage;
|
||||
extern ULONG MmHighestPhysicalPage;
|
||||
extern ULONG MmAvailablePages;
|
||||
extern ULONG MmResidentAvailablePages;
|
||||
extern PFN_NUMBER MmResidentAvailablePages;
|
||||
|
||||
extern PVOID MmPagedPoolBase;
|
||||
extern ULONG MmPagedPoolSize;
|
||||
|
|
|
@ -13,6 +13,12 @@
|
|||
#define DbgPrint DbgPrintEarly
|
||||
#endif
|
||||
|
||||
/* WDK hacks */
|
||||
#ifdef _M_AMD64
|
||||
#define IoAllocateAdapterChannel _IoAllocateAdapterChannel
|
||||
#define KeGetCurrentThread _KeGetCurrentThread
|
||||
#endif
|
||||
|
||||
/* Version Data */
|
||||
#undef __MSVCRT__
|
||||
#include <psdk/ntverp.h>
|
||||
|
|
|
@ -21,6 +21,7 @@ ULONG IoDeviceHandlerObjectSize;
|
|||
|
||||
/* FUNCTIONS *****************************************************************/
|
||||
|
||||
#undef IoAllocateAdapterChannel
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
|
|
@ -526,14 +526,14 @@ KDDEBUGGER_DATA64 KdDebuggerDataBlock =
|
|||
//
|
||||
// AMD64 GDT/LDT/TSS constants
|
||||
//
|
||||
KGDT_64_R0_CODE,
|
||||
KGDT_64_DATA,
|
||||
KGDT_64_DATA,
|
||||
KGDT_64_R3_CODE,
|
||||
KGDT_64_DATA,
|
||||
KGDT_64_DATA,
|
||||
KGDT64_R0_CODE,
|
||||
KGDT64_R3_DATA,
|
||||
KGDT64_R3_DATA,
|
||||
KGDT64_R3_CODE,
|
||||
KGDT64_R3_DATA,
|
||||
KGDT64_R3_DATA,
|
||||
0,
|
||||
KGDT_TSS,
|
||||
KGDT64_SYS_TSS,
|
||||
0,
|
||||
0,
|
||||
#else
|
||||
|
|
|
@ -175,6 +175,7 @@ KeQueryTickCount(IN PLARGE_INTEGER TickCount)
|
|||
}
|
||||
}
|
||||
|
||||
#ifndef _M_AMD64
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
@ -217,6 +218,7 @@ KeQueryInterruptTime(VOID)
|
|||
/* Return the time value */
|
||||
return CurrentTime.QuadPart;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
* PROGRAMMERS: ReactOS Portable Systems Group
|
||||
*/
|
||||
|
||||
#ifndef _M_AMD64
|
||||
|
||||
#define MI_MIN_PAGES_FOR_NONPAGED_POOL_TUNING ((255*1024*1024) >> PAGE_SHIFT)
|
||||
#define MI_MIN_PAGES_FOR_SYSPTE_TUNING ((19*1024*1024) >> PAGE_SHIFT)
|
||||
#define MI_MIN_PAGES_FOR_SYSPTE_BOOST ((32*1024*1024) >> PAGE_SHIFT)
|
||||
|
@ -38,6 +40,8 @@
|
|||
#define MM_HIGHEST_VAD_ADDRESS \
|
||||
(PVOID)((ULONG_PTR)MM_HIGHEST_USER_ADDRESS - (16 * PAGE_SIZE))
|
||||
|
||||
#endif /* !_M_AMD64 */
|
||||
|
||||
/* Make the code cleaner with some definitions for size multiples */
|
||||
#define _1KB (1024)
|
||||
#define _1MB (1024 * _1KB)
|
||||
|
@ -58,7 +62,9 @@
|
|||
#define PDE_COUNT 4096
|
||||
#define PTE_COUNT 256
|
||||
#else
|
||||
#error Define these please!
|
||||
#define PD_COUNT PPE_PER_PAGE
|
||||
#define PDE_COUNT PDE_PER_PAGE
|
||||
#define PTE_COUNT PTE_PER_PAGE
|
||||
#endif
|
||||
|
||||
#ifdef _M_IX86
|
||||
|
|
|
@ -26,7 +26,7 @@ int FASTCALL
|
|||
CLIPPING_UpdateGCRegion(DC* Dc)
|
||||
{
|
||||
PROSRGNDATA CombinedRegion;
|
||||
HRGN hRgnVis = NULL;
|
||||
HRGN hRgnVis = Dc->prgnVis->BaseObject.hHmgr;
|
||||
|
||||
// would prefer this, but the rest of the code sucks
|
||||
// ASSERT(Dc->rosdc.hGCClipRgn);
|
||||
|
@ -45,7 +45,7 @@ CLIPPING_UpdateGCRegion(DC* Dc)
|
|||
Dc->rosdc.hGCClipRgn = IntSysCreateRectRgn(0, 0, 0, 0);
|
||||
|
||||
if (Dc->rosdc.hClipRgn == NULL)
|
||||
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, ((PROSRGNDATA)Dc->prgnVis)->BaseObject.hHmgr, 0, RGN_COPY);
|
||||
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, hRgnVis, 0, RGN_COPY);
|
||||
else
|
||||
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, Dc->rosdc.hClipRgn, hRgnVis, RGN_AND);
|
||||
|
||||
|
|
Loading…
Reference in a new issue