本文整理匯總了C++中GetPageSize函數的典型用法代碼示例。如果您正苦於以下問題:C++ GetPageSize函數的具體用法?C++ GetPageSize怎麽用?C++ GetPageSize使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了GetPageSize函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C++代碼示例。
示例1: MmapWrapperWriteAndReadMemoryAccess
const char * MmapWrapperWriteAndReadMemoryAccess()
{
#if defined(TARGET_MAC)
return reinterpret_cast<const char *> (mmap(0, GetPageSize(), PROT_READ | PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0));
#else
return reinterpret_cast<const char *> (mmap(0, GetPageSize(), PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, 0, 0));
#endif
}
示例2: GetRangeMin
void CRoundSliderCtrl::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
const int nMin = GetRangeMin();
const int nMax = GetRangeMax()+1;
switch(nChar)
{
case VK_LEFT:
case VK_UP:
{
int nNewPos = GetPos()-GetLineSize();
while(nNewPos < nMin) nNewPos += (nMax - nMin);
SetPos(nNewPos);
RedrawWindow();
PostMessageToParent(TB_LINEUP);
}
break;
case VK_RIGHT:
case VK_DOWN:
{
int nNewPos = GetPos()+GetLineSize();
while(nNewPos >= nMax) nNewPos -= (nMax - nMin);
SetPos(nNewPos);
RedrawWindow();
PostMessageToParent(TB_LINEDOWN);
}
break;
case VK_PRIOR:
{
int nNewPos = GetPos()-GetPageSize();
while(nNewPos < nMin) nNewPos += (nMax - nMin);
SetPos(nNewPos);
RedrawWindow();
PostMessageToParent(TB_PAGEUP);
}
break;
case VK_NEXT:
{
int nNewPos = GetPos()+GetPageSize();
while(nNewPos >= nMax) nNewPos -= (nMax - nMin);
SetPos(nNewPos);
RedrawWindow();
PostMessageToParent(TB_PAGEDOWN);
}
break;
case VK_HOME:
case VK_END:
// Do nothing (ignore keystroke)
break;
default:
CSliderCtrl::OnKeyDown(nChar, nRepCnt, nFlags);
}
}
示例3: tsk_pagesize
static int tsk_pagesize(RIOMach *riom) {
#define GetPageSize(x) (host_page_size (riom->task, x) == KERN_SUCCESS)
static vm_size_t pagesize = 0;
return pagesize ? pagesize
: GetPageSize (&pagesize)
? pagesize : 4096;
}
示例4: GetPageSize
bool wxNotebook::MSWPrintChild(WXHDC hDC, wxWindow *child)
{
// solid background colour overrides themed background drawing
if ( !UseBgCol() && DoDrawBackground(hDC, child) )
return true;
// If we're using a solid colour (for example if we've switched off
// theming for this notebook), paint it
if (UseBgCol())
{
wxRect r = GetPageSize();
if ( r.IsEmpty() )
return false;
RECT rc;
wxCopyRectToRECT(r, rc);
// map rect to the coords of the window we're drawing in
if ( child )
::MapWindowPoints(GetHwnd(), GetHwndOf(child), (POINT *)&rc, 2);
wxBrush brush(GetBackgroundColour());
HBRUSH hbr = GetHbrushOf(brush);
::FillRect((HDC) hDC, &rc, hbr);
return true;
}
return wxNotebookBase::MSWPrintChild(hDC, child);
}
示例5: wxCHECK_MSG
bool wxNotebook::SetPageText(size_t nPage, const wxString& strText)
{
wxCHECK_MSG( IS_VALID_PAGE(nPage), false, wxT("notebook page out of range") );
TC_ITEM tcItem;
tcItem.mask = TCIF_TEXT;
tcItem.pszText = wxMSW_CONV_LPTSTR(strText);
if ( !HasFlag(wxNB_MULTILINE) )
return TabCtrl_SetItem(GetHwnd(), nPage, &tcItem) != 0;
// multiline - we need to set new page size if a line is added or removed
int rows = GetRowCount();
bool ret = TabCtrl_SetItem(GetHwnd(), nPage, &tcItem) != 0;
if ( ret && rows != GetRowCount() )
{
const wxRect r = GetPageSize();
const size_t count = m_pages.Count();
for ( size_t page = 0; page < count; page++ )
m_pages[page]->SetSize(r);
}
return ret;
}
示例6: main
int main(int nargs, char **args)
{
size_t pgsz;
int MaxL1Size;
int muladd, lat, lbnreg, L1Size, mmnreg, nkflop;
FILE *fpout;
char pre;
if (nargs != 3)
{
fprintf(stderr, "USAGE: %s <pre> <file>\n", args[0]);
exit(-1);
}
pre = *args[1];
L1Size = 1024 * GetL1CacheSize(64);
if (pre == 'd') L1Size /= ATL_dsize;
else if (pre == 's') L1Size /= ATL_ssize;
else if (pre == 'z') L1Size /= ATL_csize;
else if (pre == 'c') L1Size /= ATL_zsize;
getfpinfo(pre, &muladd, &lat, &lbnreg, &nkflop);
pgsz = GetPageSize();
CreateHeader(pre, args[2], L1Size, muladd, lat, lbnreg, nkflop, 0, pgsz);
mmnreg = getmmnreg(pre);
CreateHeader(pre, args[2], L1Size, muladd, lat, lbnreg, nkflop, mmnreg,pgsz);
return(0);
}
示例7: TabCtrl_HitTest
int wxNotebook::HitTest(const wxPoint& pt, long *flags) const
{
TC_HITTESTINFO hitTestInfo;
hitTestInfo.pt.x = pt.x;
hitTestInfo.pt.y = pt.y;
int item = TabCtrl_HitTest(GetHwnd(), &hitTestInfo);
if ( flags )
{
*flags = 0;
if ((hitTestInfo.flags & TCHT_NOWHERE) == TCHT_NOWHERE)
*flags |= wxBK_HITTEST_NOWHERE;
if ((hitTestInfo.flags & TCHT_ONITEM) == TCHT_ONITEM)
*flags |= wxBK_HITTEST_ONITEM;
if ((hitTestInfo.flags & TCHT_ONITEMICON) == TCHT_ONITEMICON)
*flags |= wxBK_HITTEST_ONICON;
if ((hitTestInfo.flags & TCHT_ONITEMLABEL) == TCHT_ONITEMLABEL)
*flags |= wxBK_HITTEST_ONLABEL;
if ( item == wxNOT_FOUND && GetPageSize().Contains(pt) )
*flags |= wxBK_HITTEST_ONPAGE;
}
return item;
}
示例8: pressed
/*----------------------------------------------------------------------
* Class: AmayaScrollBar
* Method: OnScroll
* Description:
-----------------------------------------------------------------------*/
void AmayaScrollBar::OnScroll( wxScrollEvent& event )
{
/* this flag is necessary because 2 events occure when up/down button
is pressed (it's an optimisation)
this hack works because OnLineDown is called before OnScroll,
but becareful the events orders could change in future wxWidgets
releases or can be platform specific
*/
if (m_IgnoreNextScrollEvent)
{
m_IgnoreNextScrollEvent = FALSE;
event.Skip();
return;
}
if (event.GetOrientation() == wxHORIZONTAL)
{
TTALOGDEBUG_3( TTA_LOG_DIALOG, _T("AmayaScrollBar::OnScroll [wxHORIZONTAL][frameid=%d][pos=%d][pagesize=%d]"), m_ParentFrameID, event.GetPosition(), GetPageSize() );
FrameHScrolledCallback( m_ParentFrameID,
event.GetPosition(),
GetPageSize() );
}
else if (event.GetOrientation() == wxVERTICAL)
{
TTALOGDEBUG_3( TTA_LOG_DIALOG, _T("AmayaScrollBar::OnScroll [wxVERTICAL][frameid=%d][pos=%d][pagesize=%d]"), m_ParentFrameID, event.GetPosition(), GetPageSize() );
FrameVScrolledCallback( m_ParentFrameID,
event.GetPosition() );
}
}
示例9: GetPageSize
WXHBRUSH wxNotebook::QueryBgBitmap()
{
wxRect r = GetPageSize();
if ( r.IsEmpty() )
return 0;
wxUxThemeHandle theme(this, L"TAB");
if ( !theme )
return 0;
RECT rc;
wxCopyRectToRECT(r, rc);
WindowHDC hDC(GetHwnd());
wxUxThemeEngine::Get()->GetThemeBackgroundExtent
(
theme,
(HDC) hDC,
9 /* TABP_PANE */,
0,
&rc,
&rc
);
MemoryHDC hDCMem(hDC);
CompatibleBitmap hBmp(hDC, rc.right, rc.bottom);
SelectInHDC selectBmp(hDCMem, hBmp);
if ( !DoDrawBackground((WXHDC)(HDC)hDCMem) )
return 0;
return (WXHBRUSH)::CreatePatternBrush(hBmp);
}
示例10: GetPageSize
void CXFA_FFPageView::GetDisplayMatrix(CFX_Matrix& mt,
const CFX_Rect& rtDisp,
int32_t iRotate) const {
CFX_SizeF sz = GetPageSize();
CFX_RectF fdePage;
fdePage.Set(0, 0, sz.x, sz.y);
GetPageMatrix(mt, fdePage, rtDisp, iRotate, 0);
}
示例11: SafeCopyTest
/*!
* Test the PIN_SafeCopy() function in the following scenarios:
* A. Successful copy of an entire memory region
* B. Partial copy of a memory region, whose tail is inaccessible
* C. Failure to copy an inaccessible memory region
*/
VOID SafeCopyTest()
{
size_t pageSize = GetPageSize();
CHAR * src = (CHAR *)MemAlloc(2*pageSize);
ASSERTX(src != 0);
CHAR * srcBuf = src + 1; // +1 for testing unaligned access
CHAR * dst = (CHAR *)MemAlloc(2*pageSize);
ASSERTX(dst != 0);
CHAR * dstBuf = dst + 1; // +1 for testing unaligned access
size_t bufSize = 2*pageSize - 1;
size_t halfBufSize = pageSize - 1;
size_t copySize;
//A.
for (unsigned int i = 0; i < bufSize; ++i)
{
src[i] = i/256;
dst[i] = 0;
}
copySize = PIN_SafeCopy(dstBuf, srcBuf, bufSize);
ASSERT(((copySize == bufSize) && (memcmp(dstBuf, srcBuf, bufSize) == 0)), "SafeCopy (A) failed.\n");
out << "SafeCopy (A): Entire buffer has been copied successfully." << endl << flush;
//B.
for (unsigned int i = 0; i < pageSize; ++i)
{
dst[i] = 0;
}
MemProtect(src + pageSize, pageSize, FALSE); // second half of src is inaccessible
copySize = PIN_SafeCopy(dstBuf, srcBuf, bufSize);
ASSERT(((copySize == halfBufSize) && (memcmp(dstBuf, srcBuf, halfBufSize) == 0)), "SafeCopy (B) failed.\n");
// Check to see that all accessible bytes near the end of the first page are copied successfully
for (unsigned int sz = 1; sz < 16; ++sz)
{
for (unsigned int i = 0; i < sz; ++i)
{
dstBuf[i] = 0;
}
copySize = PIN_SafeCopy(dstBuf, src + pageSize - sz, pageSize);
ASSERT(((copySize == sz) && (memcmp(dstBuf, src + pageSize - sz, sz) == 0)), "SafeCopy (B) failed.\n");
}
out << "SafeCopy (B): Accessible part of the buffer has been copied successfully." << endl << flush;
//C.
MemProtect(dst, pageSize, FALSE); // dst is inaccessible
copySize = PIN_SafeCopy(dstBuf, srcBuf, bufSize);
ASSERT((copySize == 0), "SafeCopy (C) failed.\n");
out << "SafeCopy (C): Inaccessible buffer has not been copied." << endl << flush;
MemFree(src, 2*pageSize);
MemFree(dst, 2*pageSize);
}
示例12: wxCHECK_RET
void wxNotebook::AdjustPageSize(wxNotebookPage *page)
{
wxCHECK_RET( page, wxT("NULL page in wxNotebook::AdjustPageSize") );
const wxRect r = GetPageSize();
if ( !r.IsEmpty() )
{
page->SetSize(r);
}
}
示例13: GetShowButtons
void ScrollBarHorizontal::SetPos(float pos)
{
ScrollBarBase::SetPos(pos);
float mult = GetShowButtons() ? 1.0f : 0.0f;
_btnBox->Resize(std::max(GetScrollPaneLength() * GetPageSize() / GetDocumentSize(), _btnBox->GetTextureWidth()),
_btnBox->GetHeight());
_btnBox->Move(floorf(_btnUpLeft->GetWidth() * mult + (GetWidth() - _btnBox->GetWidth()
- (_btnUpLeft->GetWidth() + _btnDownRight->GetWidth()) * mult) * GetPos() / (GetDocumentSize() - GetPageSize()) + 0.5f), _btnBox->GetY());
}
示例14: GetPageSize
bool wxWizard::ResizeBitmap(wxBitmap& bmp)
{
if (!GetBitmapPlacement())
return false;
if (bmp.Ok())
{
wxSize pageSize = m_sizerPage->GetSize();
if (pageSize == wxSize(0,0))
pageSize = GetPageSize();
int bitmapWidth = wxMax(bmp.GetWidth(), GetMinimumBitmapWidth());
int bitmapHeight = pageSize.y;
if (!m_statbmp->GetBitmap().Ok() || m_statbmp->GetBitmap().GetHeight() != bitmapHeight)
{
wxBitmap bitmap(bitmapWidth, bitmapHeight);
{
wxMemoryDC dc;
dc.SelectObject(bitmap);
dc.SetBackground(wxBrush(m_bitmapBackgroundColour));
dc.Clear();
if (GetBitmapPlacement() & wxWIZARD_TILE)
{
TileBitmap(wxRect(0, 0, bitmapWidth, bitmapHeight), dc, bmp);
}
else
{
int x, y;
if (GetBitmapPlacement() & wxWIZARD_HALIGN_LEFT)
x = 0;
else if (GetBitmapPlacement() & wxWIZARD_HALIGN_RIGHT)
x = bitmapWidth - bmp.GetWidth();
else
x = (bitmapWidth - bmp.GetWidth())/2;
if (GetBitmapPlacement() & wxWIZARD_VALIGN_TOP)
y = 0;
else if (GetBitmapPlacement() & wxWIZARD_VALIGN_BOTTOM)
y = bitmapHeight - bmp.GetHeight();
else
y = (bitmapHeight - bmp.GetHeight())/2;
dc.DrawBitmap(bmp, x, y, true);
dc.SelectObject(wxNullBitmap);
}
}
bmp = bitmap;
}
}
return true;
}
示例15: main
/*!
* The main procedure of the application.
*/
int main(int argc, char *argv[])
{
cerr << "SMC in the image of the application" << endl;
// buffer to move foo/bar routines into and execute
static char staticBuffer[PI_FUNC::MAX_SIZE];
// Set read-write-execute protection for the buffer
size_t pageSize = GetPageSize();
char * firstPage = (char *)(((size_t)staticBuffer) & ~(pageSize - 1));
char * endPage = (char *)(((size_t)staticBuffer + sizeof(staticBuffer) + pageSize - 1) & ~(pageSize - 1));
if (!MemProtect(firstPage, endPage - firstPage, MEM_READ_WRITE_EXEC)) {Abort("MemProtect failed");}
for (int i = 0; i < 3; ++i)
{
FOO_FUNC fooFunc;
fooFunc.Copy(staticBuffer).Execute().AssertStatus();
cerr << fooFunc.Name() << ": " << fooFunc.ErrorMessage() << endl;
BAR_FUNC barFunc;
barFunc.Copy(staticBuffer).Execute().AssertStatus();
cerr << barFunc.Name() << ": " << barFunc.ErrorMessage() << endl;
}
cerr << "Dynamic code generation" << endl;
void * dynamicBuffer;
dynamicBuffer = MemAlloc(PI_FUNC::MAX_SIZE, MEM_READ_WRITE_EXEC);
if (dynamicBuffer == 0) {Abort("MemAlloc failed");}
{
FOO_FUNC fooFunc;
fooFunc.Copy(dynamicBuffer);
if (!MemProtect(dynamicBuffer, PI_FUNC::MAX_SIZE, MEM_READ_EXEC)) {Abort("MemProtect failed");}
for (int i = 0; i < 3; ++i)
{
fooFunc.Execute().AssertStatus();
cerr << fooFunc.Name() << ": " << fooFunc.ErrorMessage() << endl;
}
}
if (!MemProtect(dynamicBuffer, PI_FUNC::MAX_SIZE, MEM_READ_WRITE_EXEC)) {Abort("MemProtect failed");}
{
BAR_FUNC barFunc;
barFunc.Copy(dynamicBuffer);
if (!MemProtect(dynamicBuffer, PI_FUNC::MAX_SIZE, MEM_READ_EXEC)) {Abort("MemProtect failed");}
for (int i = 0; i < 3; ++i)
{
barFunc.Execute().AssertStatus();
cerr << barFunc.Name() << ": " << barFunc.ErrorMessage() << endl;
}
}
return 0;
}