您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ AssertReturnVoid函数代码示例

51自学网 2021-06-01 19:47:58
  C++
这篇教程C++ AssertReturnVoid函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中AssertReturnVoid函数的典型用法代码示例。如果您正苦于以下问题:C++ AssertReturnVoid函数的具体用法?C++ AssertReturnVoid怎么用?C++ AssertReturnVoid使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了AssertReturnVoid函数的24个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: AssertReturnVoid

void UIMachineLogicNormal::sltOpenStatusBarSettings(){    /* Do not process if window(s) missed! */    AssertReturnVoid(isMachineWindowsCreated());    /* Make sure status-bar is enabled: */    const bool fEnabled = actionPool()->action(UIActionIndexRT_M_View_M_StatusBar_T_Visibility)->isChecked();    AssertReturnVoid(fEnabled);    /* Prevent user from opening another one editor or toggle status-bar: */    actionPool()->action(UIActionIndexRT_M_View_M_StatusBar_S_Settings)->setEnabled(false);    actionPool()->action(UIActionIndexRT_M_View_M_StatusBar_T_Visibility)->setEnabled(false);    /* Create status-bar editor: */    UIStatusBarEditorWindow *pStatusBarEditor = new UIStatusBarEditorWindow(activeMachineWindow());    AssertPtrReturnVoid(pStatusBarEditor);    {        /* Configure status-bar editor: */        connect(pStatusBarEditor, SIGNAL(destroyed(QObject*)),                this, SLOT(sltStatusBarSettingsClosed()));#ifdef Q_WS_MAC        connect(this, SIGNAL(sigNotifyAbout3DOverlayVisibilityChange(bool)),                pStatusBarEditor, SLOT(sltActivateWindow()));#endif /* Q_WS_MAC */        /* Show window: */        pStatusBarEditor->show();    }}
开发者ID:sobomax,项目名称:virtualbox_64bit_edd,代码行数:27,


示例2: vboxvfs_put_path_internal

/** * Free resources allocated by vboxvfs_path_internal() and vboxvfs_guest_vnode_to_shflstring_path_internal(). * * @param ppHandle  Reference to object to be freed. */voidvboxvfs_put_path_internal(void **ppHandle){    AssertReturnVoid(ppHandle);    AssertReturnVoid(*ppHandle);    RTMemFree(*ppHandle);}
开发者ID:svn2github,项目名称:virtualbox,代码行数:12,


示例3: AssertReturnVoid

/** *  @note Locks this object for writing, together with the peer object *  represented by @a aThat (locked for reading). */void USBController::i_copyFrom(USBController *aThat){    AssertReturnVoid(aThat != NULL);    /* sanity */    AutoCaller autoCaller(this);    AssertComRCReturnVoid(autoCaller.rc());    /* sanity too */    AutoCaller thatCaller(aThat);    AssertComRCReturnVoid(thatCaller.rc());    /* even more sanity */    AutoAnyStateDependency adep(m->pParent);    AssertComRCReturnVoid(adep.rc());    /* Machine::copyFrom() may not be called when the VM is running */    AssertReturnVoid(!Global::IsOnline(adep.machineState()));    /* peer is not modified, lock it for reading (aThat is "master" so locked     * first) */    AutoReadLock rl(aThat COMMA_LOCKVAL_SRC_POS);    AutoWriteLock wl(this COMMA_LOCKVAL_SRC_POS);    /* this will back up current data */    m->bd.assignCopy(aThat->m->bd);}
开发者ID:miguelinux,项目名称:vbox,代码行数:30,


示例4: VirtioPutQueue

/** * Puts a queue and destroys the instance. * * @param pDevice           Pointer to the Virtio device instance. * @param pQueue            Pointer to the Virtio queue. */void VirtioPutQueue(PVIRTIODEVICE pDevice, PVIRTIOQUEUE pQueue){    AssertReturnVoid(pDevice);    AssertReturnVoid(pQueue);    pDevice->pHyperOps->pfnPutQueue(pDevice, pQueue);    RTMemFree(pQueue);}
开发者ID:VirtualMonitor,项目名称:VirtualMonitor,代码行数:14,


示例5: AssertReturnVoid

void UIMainEventListener::registerSource(const CEventSource &comSource, const CEventListener &comListener){    /* Make sure source and listener are valid: */    AssertReturnVoid(!comSource.isNull());    AssertReturnVoid(!comListener.isNull());    /* Create thread for passed source: */    m_threads << new UIMainEventListeningThread(comSource, comListener);    /* And start it: */    m_threads.last()->start();}
开发者ID:mdaniel,项目名称:virtualbox-org-svn-vbox-trunk,代码行数:11,


示例6: DECLINLINE

DECLINLINE(void) tftpProcessRRQ(PNATState pData, PCTFTPIPHDR pTftpIpHeader, int pktlen){    PTFTPSESSION pTftpSession = NULL;    uint8_t *pu8Payload = NULL;    int     cbPayload = 0;    size_t cbFileName = 0;    int rc = VINF_SUCCESS;    AssertPtrReturnVoid(pTftpIpHeader);    AssertPtrReturnVoid(pData);    AssertReturnVoid(pktlen > sizeof(TFTPIPHDR));    LogFlowFunc(("ENTER: pTftpIpHeader:%p, pktlen:%d/n", pTftpIpHeader, pktlen));    rc = tftpAllocateSession(pData, pTftpIpHeader, &pTftpSession);    if (   RT_FAILURE(rc)        || pTftpSession == NULL)    {        LogFlowFuncLeave();        return;    }    pu8Payload = (uint8_t *)&pTftpIpHeader->Core;    cbPayload = pktlen - sizeof(TFTPIPHDR);    cbFileName = RTStrNLen((char *)pu8Payload, cbPayload);    /* We assume that file name should finish with '/0' and shouldn't bigger     *  than buffer for name storage.     */    AssertReturnVoid(   cbFileName < cbPayload                     && cbFileName < TFTP_FILENAME_MAX /* current limit in tftp session handle */                     && cbFileName);    /* Dont't bother with rest processing in case of invalid access */    if (RT_FAILURE(tftpSecurityFilenameCheck(pData, pTftpSession)))    {        tftpSendError(pData, pTftpSession, 2, "Access violation", pTftpIpHeader);        LogFlowFuncLeave();        return;    }    if (RT_UNLIKELY(!tftpIsSupportedTransferMode(pTftpSession)))    {        tftpSendError(pData, pTftpSession, 4, "Unsupported transfer mode", pTftpIpHeader);        LogFlowFuncLeave();        return;    }    tftpSendOACK(pData, pTftpSession, pTftpIpHeader);    LogFlowFuncLeave();    return;}
开发者ID:ryenus,项目名称:vbox,代码行数:54,


示例7: darwinHIDKeyboardCacheDoUpdate

/** * Updates the cached keyboard data. * * @todo The current implementation is very brute force... *       Rewrite it so that it doesn't flush the cache completely but simply checks whether *       anything has changed in the HID config. With any luck, there might even be a callback *       or something we can poll for HID config changes... *       setRemovalCallback() is a start... */static void darwinHIDKeyboardCacheDoUpdate(void){    g_u64KeyboardTS = RTTimeMilliTS();    /*     * Dispense with the old cache data.     */    darwinHIDKeyboardCacheZap();    /*     * Open the master port on the first invocation.     */    if (!g_MasterPort)    {        kern_return_t krc = IOMasterPort(MACH_PORT_NULL, &g_MasterPort);        AssertReturnVoid(krc == KERN_SUCCESS);    }    /*     * Create a matching dictionary for searching for keyboards devices.     */    static const UInt32 s_Page = kHIDPage_GenericDesktop;    static const UInt32 s_Usage = kHIDUsage_GD_Keyboard;    CFMutableDictionaryRef RefMatchingDict = IOServiceMatching(kIOHIDDeviceKey);    AssertReturnVoid(RefMatchingDict);    CFDictionarySetValue(RefMatchingDict, CFSTR(kIOHIDPrimaryUsagePageKey),                         CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &s_Page));    CFDictionarySetValue(RefMatchingDict, CFSTR(kIOHIDPrimaryUsageKey),                         CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &s_Usage));    /*     * Perform the search and get a collection of keyboard devices.     */    io_iterator_t Keyboards = NULL;    IOReturn rc = IOServiceGetMatchingServices(g_MasterPort, RefMatchingDict, &Keyboards);    AssertMsgReturnVoid(rc == kIOReturnSuccess, ("rc=%d/n", rc));    RefMatchingDict = NULL; /* the reference is consumed by IOServiceGetMatchingServices. */    /*     * Enumerate the keyboards and query the cache data.     */    unsigned i = 0;    io_object_t KeyboardDevice;    while (   i < RT_ELEMENTS(g_aKeyboards)           && (KeyboardDevice = IOIteratorNext(Keyboards)) != 0)    {        if (darwinHIDKeyboardCacheCreateEntry(&g_aKeyboards[i], KeyboardDevice))            i++;        IOObjectRelease(KeyboardDevice);    }    g_cKeyboards = i;    IOObjectRelease(Keyboards);}
开发者ID:VirtualMonitor,项目名称:VirtualMonitor,代码行数:63,


示例8: VBGLR3DECL

VBGLR3DECL(void) VbglR3Term(void){    /*     * Decrement the reference count and see if we're the last one out.     */    uint32_t cInits = ASMAtomicDecU32(&g_cInits);    if (cInits > 0)        return;#if !defined(VBOX_VBGLR3_XSERVER)    AssertReturnVoid(!cInits);# if defined(RT_OS_WINDOWS)    HANDLE hFile = g_hFile;    g_hFile = INVALID_HANDLE_VALUE;    AssertReturnVoid(hFile != INVALID_HANDLE_VALUE);    BOOL fRc = CloseHandle(hFile);    Assert(fRc); NOREF(fRc);# elif defined(RT_OS_OS2)    RTFILE File = g_File;    g_File = NIL_RTFILE;    AssertReturnVoid(File != NIL_RTFILE);    APIRET rc = DosClose((uintptr_t)File);    AssertMsg(!rc, ("%ld/n", rc));#elif defined(RT_OS_DARWIN)    io_connect_t    uConnection = g_uConnection;    RTFILE          hFile       = g_File;    g_uConnection = 0;    g_File        = NIL_RTFILE;    kern_return_t kr = IOServiceClose(uConnection);    AssertMsg(kr == kIOReturnSuccess, ("%#x (%d)/n", kr, kr));    int rc = RTFileClose(hFile);    AssertRC(rc);# else /* The IPRT case. */    RTFILE File = g_File;    g_File = NIL_RTFILE;    AssertReturnVoid(File != NIL_RTFILE);    int rc = RTFileClose(File);    AssertRC(rc);# endif#else  /* VBOX_VBGLR3_XSERVER */    int File = g_File;    g_File = -1;    if (File == -1)        return;    xf86close(File);#endif /* VBOX_VBGLR3_XSERVER */}
开发者ID:ElvisTulip,项目名称:vbox,代码行数:51,


示例9: vboxvfs_destroy_internal_data

/** * Mount and unmount helper: Release VBoxVFS internal resources. * Deallocates ppMount as well. * * @param ppMount      Pointer to reference of VBoxVFS internal data. */static voidvboxvfs_destroy_internal_data(vboxvfs_mount_t **ppMount){    AssertReturnVoid(ppMount);    AssertReturnVoid(*ppMount);    AssertReturnVoid((*ppMount)->pShareName);    RTMemFree((*ppMount)->pShareName);    (*ppMount)->pShareName = NULL;    vboxvfs_destroy_locking(*ppMount);    RTMemFree(*ppMount);    *ppMount = NULL;}
开发者ID:miguelinux,项目名称:vbox,代码行数:20,


示例10: AssertReturnVoid

void UIMediumEnumerator::deleteMedium(const QString &strMediumID){    /* Do not delete UIMedium(s) with incorrect ID: */    AssertReturnVoid(!strMediumID.isNull());    AssertReturnVoid(strMediumID != UIMedium::nullID());    /* Make sure medium still exists: */    AssertReturnVoid(m_mediums.contains(strMediumID));    /* Remove medium: */    m_mediums.remove(strMediumID);    LogRel(("GUI: UIMediumEnumerator: Medium with key={%s} deleted/n", strMediumID.toUtf8().constData()));    /* Notify listener: */    emit sigMediumDeleted(strMediumID);}
开发者ID:jeppeter,项目名称:vbox,代码行数:15,


示例11: vboxDtPOps_Destroy

/** * @callback_method_impl{dtrace_pops_t,dtps_destroy} */static void    vboxDtPOps_Destroy(void *pvProv, dtrace_id_t idProbe, void *pvProbe){    PSUPDRVVDTPROVIDERCORE  pProv  = (PSUPDRVVDTPROVIDERCORE)pvProv;    AssertPtrReturnVoid(pProv);    LOG_DTRACE(("%s: %p / %p - %#x / %p/n", __FUNCTION__, pProv, pProv->TracerData.DTrace.idProvider, idProbe, pvProbe));    AssertReturnVoid(pProv->TracerData.DTrace.cProvidedProbes > 0);    AssertPtrReturnVoid(pProv->TracerData.DTrace.idProvider);    if (!pProv->TracerData.DTrace.fZombie)    {        uint32_t        idxProbeLoc = (uint32_t)(uintptr_t)pvProbe;        PCVTGPROBELOC   pProbeLocRO = (PVTGPROBELOC)&pProv->paProbeLocsRO[idxProbeLoc];        uint32_t       *pidProbe;        if (!pProv->fUmod)        {            pidProbe = (uint32_t *)&pProbeLocRO->idProbe;            Assert(!pProbeLocRO->fEnabled);            Assert(*pidProbe == idProbe);        }        else        {            pidProbe = &pProv->paR0ProbeLocs[idxProbeLoc].idProbe;            Assert(!pProv->paR0ProbeLocs[idxProbeLoc].fEnabled);            Assert(*pidProbe == idProbe);            NOREF(idProbe);        }        *pidProbe = 0;    }    pProv->TracerData.DTrace.cProvidedProbes--;}
开发者ID:bayasist,项目名称:vbox,代码行数:33,


示例12: AssertReturnVoid

void UIMediumEnumerator::enumerateMediums(){    /* Make sure we are not already in progress: */    AssertReturnVoid(!m_fMediumEnumerationInProgress);    /* Compose new map of all currently known mediums & their children.     * While composing we are using data from already existing mediums. */    UIMediumMap mediums;    addNullMediumToMap(mediums);    addHardDisksToMap(vboxGlobal().virtualBox().GetHardDisks(), mediums);    addMediumsToMap(vboxGlobal().host().GetDVDDrives(), mediums, UIMediumType_DVD);    addMediumsToMap(vboxGlobal().virtualBox().GetDVDImages(), mediums, UIMediumType_DVD);    addMediumsToMap(vboxGlobal().host().GetFloppyDrives(), mediums, UIMediumType_Floppy);    addMediumsToMap(vboxGlobal().virtualBox().GetFloppyImages(), mediums, UIMediumType_Floppy);    m_mediums = mediums;    /* Notify listener: */    LogRelFlow(("UIMediumEnumerator: Medium-enumeration started.../n"));    m_fMediumEnumerationInProgress = true;    emit sigMediumEnumerationStarted();    /* Start enumeration for all the new mediums: */    QList<QString> mediumIDs = m_mediums.keys();    foreach (QString strMediumID, mediumIDs)        createMediumEnumerationTask(m_mediums[strMediumID]);}
开发者ID:MadHacker217,项目名称:VirtualBox-OSE,代码行数:26,


示例13: AssertReturnVoid

/** * Sends a signal to the thread to rescan the clients/VMs having open sessions. */void VirtualBox::ClientWatcher::update(){    AssertReturnVoid(mThread != NIL_RTTHREAD);    LogFlowFunc(("ping!/n"));    /* sent an update request */#if defined(RT_OS_WINDOWS)    ASMAtomicWriteBool(&mfUpdateReq, true);    ::SetEvent(mUpdateReq);#elif defined(RT_OS_OS2)    RTSemEventSignal(mUpdateReq);#elif defined(VBOX_WITH_SYS_V_IPC_SESSION_WATCHER)    /* use short timeouts, as we expect changes */    ASMAtomicUoWriteU8(&mUpdateAdaptCtr, RT_ELEMENTS(s_aUpdateTimeoutSteps) - 1);    RTSemEventSignal(mUpdateReq);#elif defined(VBOX_WITH_GENERIC_SESSION_WATCHER)    RTSemEventSignal(mUpdateReq);#else# error "Port me!"#endif}
开发者ID:svn2github,项目名称:virtualbox,代码行数:28,


示例14: winSetModifierState

/** * Set current state of a keyboard modifier. * * @param   idModifier        Modifier to set (VK_CAPITAL, VK_SCROLL or VK_NUMLOCK) * @param   fState            State to set */static void winSetModifierState(int idModifier, bool fState){    AssertReturnVoid((idModifier == VK_CAPITAL) || (idModifier == VK_SCROLL) || (idModifier == VK_NUMLOCK));    /* If the modifier is already in desired state, just do nothing. Otherwise, toggle it. */    if (winGetModifierState(idModifier) != fState)    {        /* Simulate KeyUp+KeyDown keystroke */        keybd_event(idModifier, 0, KEYEVENTF_EXTENDEDKEY, 0);        keybd_event(idModifier, 0, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);        /* Process posted above keyboard events immediately: */        MSG msg;        while (::PeekMessage(&msg, NULL, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE))            ::DispatchMessage(&msg);        LogRel2(("HID LEDs sync: setting %s state to %s (0x%X)./n",                 VBOX_CONTROL_TO_STR_NAME(idModifier), VBOX_BOOL_TO_STR_STATE(fState), MapVirtualKey(idModifier, MAPVK_VK_TO_VSC)));    }    else    {        LogRel2(("HID LEDs sync: setting %s state: skipped: state is already %s (0x%X)./n",                 VBOX_CONTROL_TO_STR_NAME(idModifier), VBOX_BOOL_TO_STR_STATE(fState), MapVirtualKey(idModifier, MAPVK_VK_TO_VSC)));    }}
开发者ID:svn2github,项目名称:virtualbox,代码行数:31,


示例15: AssertReturnVoid

void UIMachineWindowFullscreen::sltEnterNativeFullscreen(UIMachineWindow *pMachineWindow){    /* Make sure this slot is called only under ML and next: */    AssertReturnVoid(vboxGlobal().osRelease() > MacOSXRelease_Lion);    /* Make sure it is NULL or 'this' window passed: */    if (pMachineWindow && pMachineWindow != this)        return;    /* Make sure this window has fullscreen logic: */    UIMachineLogicFullscreen *pFullscreenLogic = qobject_cast<UIMachineLogicFullscreen*>(machineLogic());    AssertPtrReturnVoid(pFullscreenLogic);    /* Make sure this window should be shown and mapped to host-screen: */    if (!uisession()->isScreenVisible(m_uScreenId) ||        !pFullscreenLogic->hasHostScreenForGuestScreen(m_uScreenId))        return;    /* Mark window 'transitioned to fullscreen': */    m_fIsInFullscreenTransition = true;    /* Enter native fullscreen mode if necessary: */    if (   (pFullscreenLogic->screensHaveSeparateSpaces() || m_uScreenId == 0)        && !darwinIsInFullscreenMode(this))        darwinToggleFullscreenMode(this);}
开发者ID:pombredanne,项目名称:virtualbox-org-svn-vbox-trunk,代码行数:26,


示例16: AssertReturnVoid

void ErrorInfo::init(IUnknown *aI,                     const GUID &aIID,                     bool aKeepObj /* = false */){    AssertReturnVoid(aI);#if !defined(VBOX_WITH_XPCOM)    ComPtr<IUnknown> iface = aI;    ComPtr<ISupportErrorInfo> serr;    HRESULT rc = iface.queryInterfaceTo(serr.asOutParam());    if (SUCCEEDED(rc))    {        rc = serr->InterfaceSupportsErrorInfo(aIID);        if (SUCCEEDED(rc))            init(aKeepObj);    }#else    init(aKeepObj);#endif    if (mIsBasicAvailable)    {        mCalleeIID = aIID;        GetInterfaceNameByIID(aIID, mCalleeName.asOutParam());    }}
开发者ID:ryenus,项目名称:vbox,代码行数:30,


示例17: AssertReturnVoid

void QITableView::sltEditorDestroyed(QObject *pEditor){    /* Clear destroyed editor from the table: */    const QModelIndex index = m_editors.key(pEditor);    AssertReturnVoid(index.isValid());    m_editors.remove(index);}
开发者ID:mdaniel,项目名称:virtualbox-org-svn-vbox-trunk,代码行数:7,


示例18: AssertReturnVoid

/** * Stop this service. */void org_virtualbox_VBoxVFS::stop(IOService *pProvider){    int rc;    AssertReturnVoid(ASMAtomicReadBool(&g_fInstantiated));    rc = VBoxVFSUnRegisterFilesystem();    if (RT_FAILURE(rc))    {        PERROR("VBoxVFS filesystem is busy. Make sure all "               "shares are unmounted (%d)", rc);    }    vboxDisconnect(&g_vboxSFClient);    PINFO("VBox client disconnected");    vboxUninit();    PINFO("Low level uninit done");    coreService->release();    PINFO("VBoxGuest service released");    IOService::stop(pProvider);    ASMAtomicWriteBool(&g_fInstantiated, false);    PINFO("Successfully stopped I/O kit class instance");}
开发者ID:Klanly,项目名称:virtualbox-org-svn-vbox-trunk,代码行数:31,


示例19: DECLCALLBACK

/** @interface_method_impl{PDMAPICHLPR0,pfnClearInterruptFF} */static DECLCALLBACK(void) pdmR0ApicHlp_ClearInterruptFF(PPDMDEVINS pDevIns, PDMAPICIRQ enmType, VMCPUID idCpu){    PDMDEV_ASSERT_DEVINS(pDevIns);    PVM    pVM   = pDevIns->Internal.s.pVMR0;    PVMCPU pVCpu = &pVM->aCpus[idCpu];    AssertReturnVoid(idCpu < pVM->cCpus);    LogFlow(("pdmR0ApicHlp_ClearInterruptFF: caller=%p/%d: VM_FF_INTERRUPT %d -> 0/n",             pDevIns, pDevIns->iInstance, VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC)));    /* Note: NMI/SMI can't be cleared. */    switch (enmType)    {        case PDMAPICIRQ_HARDWARE:            VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_INTERRUPT_APIC);            break;        case PDMAPICIRQ_EXTINT:            VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_INTERRUPT_PIC);            break;        default:            AssertMsgFailed(("enmType=%d/n", enmType));            break;    }}
开发者ID:bayasist,项目名称:vbox,代码行数:26,


示例20: AssertReturnVoid

/** * A device was added, we need to adjust mUdevPolls. * * See USBProxyService::deviceAdded for details. */void USBProxyBackendLinux::deviceAdded(ComObjPtr<HostUSBDevice> &aDevice, SessionMachinesList &llOpenedMachines,                                       PUSBDEVICE aUSBDevice){    AssertReturnVoid(aDevice);    AssertReturnVoid(!aDevice->isWriteLockOnCurrentThread());    AutoReadLock devLock(aDevice COMMA_LOCKVAL_SRC_POS);    if (aUSBDevice->enmState == USBDEVICESTATE_USED_BY_HOST)    {        LogRel(("USBProxy: Device %04x:%04x (%s) isn't accessible. giving udev a few seconds to fix this.../n",                aUSBDevice->idVendor, aUSBDevice->idProduct, aUSBDevice->pszAddress));        mUdevPolls = 10; /* (10 * 500ms = 5s) */    }    devLock.release();    USBProxyBackend::deviceAdded(aDevice, llOpenedMachines, aUSBDevice);}
开发者ID:jeppeter,项目名称:vbox,代码行数:21,


示例21: DECLCALLBACK

/** @interface_method_impl{PDMAPICHLPR3,pfnClearInterruptFF} */static DECLCALLBACK(void) pdmR3ApicHlp_ClearInterruptFF(PPDMDEVINS pDevIns, PDMAPICIRQ enmType, VMCPUID idCpu){    PDMDEV_ASSERT_DEVINS(pDevIns);    PVM pVM = pDevIns->Internal.s.pVMR3;    PVMCPU pVCpu = &pVM->aCpus[idCpu];    AssertReturnVoid(idCpu < pVM->cCpus);    LogFlow(("pdmR3ApicHlp_ClearInterruptFF: caller='%s'/%d: VMCPU_FF_INTERRUPT_APIC(%d) %d -> 0/n",             pDevIns->pReg->szName, pDevIns->iInstance, idCpu, VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC)));    /* Note: NMI/SMI can't be cleared. */    switch (enmType)    {        case PDMAPICIRQ_UPDATE_PENDING:            VMCPU_ASSERT_EMT_OR_NOT_RUNNING(pVCpu);            VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_UPDATE_APIC);            break;        case PDMAPICIRQ_HARDWARE:            VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_INTERRUPT_APIC);            break;        case PDMAPICIRQ_EXTINT:            VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_INTERRUPT_PIC);            break;        default:            AssertMsgFailed(("enmType=%d/n", enmType));            break;    }#ifdef VBOX_WITH_REM    REMR3NotifyInterruptClear(pVM, pVCpu);#endif}
开发者ID:miguelinux,项目名称:vbox,代码行数:33,


示例22: DECLHIDDEN

DECLHIDDEN(void) rtR0MpNotificationTerm(void){    PRTMPNOTIFYREG  pHead;    RTSPINLOCKTMP   Tmp       = RTSPINLOCKTMP_INITIALIZER;    RTSPINLOCK      hSpinlock = g_hRTMpNotifySpinLock;    AssertReturnVoid(hSpinlock != NIL_RTSPINLOCK);    rtR0MpNotificationNativeTerm();    /* pick up the list and the spinlock. */    RTSpinlockAcquire(hSpinlock, &Tmp);    ASMAtomicWriteHandle(&g_hRTMpNotifySpinLock, NIL_RTSPINLOCK);    pHead = g_pRTMpCallbackHead;    g_pRTMpCallbackHead = NULL;    ASMAtomicIncU32(&g_iRTMpGeneration);    RTSpinlockRelease(hSpinlock, &Tmp);    /* free the list. */    while (pHead)    {        PRTMPNOTIFYREG pFree = pHead;        pHead = pHead->pNext;        pFree->pNext = NULL;        pFree->pfnCallback = NULL;        RTMemFree(pFree);    }    RTSpinlockDestroy(hSpinlock);}
开发者ID:virendramishra,项目名称:VirtualBox4.1.18,代码行数:30,


示例23: DECLCALLBACK

/** @interface_method_impl{PDMAPICHLPR3,pfnSetInterruptFF} */static DECLCALLBACK(void) pdmR3ApicHlp_SetInterruptFF(PPDMDEVINS pDevIns, PDMAPICIRQ enmType, VMCPUID idCpu){    PDMDEV_ASSERT_DEVINS(pDevIns);    PVM pVM = pDevIns->Internal.s.pVMR3;    PVMCPU pVCpu = &pVM->aCpus[idCpu];    AssertReturnVoid(idCpu < pVM->cCpus);    LogFlow(("pdmR3ApicHlp_SetInterruptFF: caller='%s'/%d: VMCPU_FF_INTERRUPT_APIC(%d) %d -> 1/n",             pDevIns->pReg->szName, pDevIns->iInstance, idCpu, VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC)));    switch (enmType)    {        case PDMAPICIRQ_HARDWARE:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC);            break;        case PDMAPICIRQ_NMI:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_NMI);            break;        case PDMAPICIRQ_SMI:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_SMI);            break;        case PDMAPICIRQ_EXTINT:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_PIC);            break;        default:            AssertMsgFailed(("enmType=%d/n", enmType));            break;    }#ifdef VBOX_WITH_REM    REMR3NotifyInterruptSet(pVM, pVCpu);#endif    VMR3NotifyCpuFFU(pVCpu->pUVCpu, VMNOTIFYFF_FLAGS_DONE_REM | VMNOTIFYFF_FLAGS_POKE);}
开发者ID:Klanly,项目名称:virtualbox-org-svn-vbox-trunk,代码行数:35,


示例24: DECLCALLBACK

/** @interface_method_impl{PDMAPICHLPR0,pfnSetInterruptFF} */static DECLCALLBACK(void) pdmR0ApicHlp_SetInterruptFF(PPDMDEVINS pDevIns, PDMAPICIRQ enmType, VMCPUID idCpu){    PDMDEV_ASSERT_DEVINS(pDevIns);    PVM    pVM   = pDevIns->Internal.s.pVMR0;    PVMCPU pVCpu = &pVM->aCpus[idCpu];    AssertReturnVoid(idCpu < pVM->cCpus);    LogFlow(("pdmR0ApicHlp_SetInterruptFF: CPU%d=caller=%p/%d: VM_FF_INTERRUPT %d -> 1 (CPU%d)/n",             VMMGetCpuId(pVM), pDevIns, pDevIns->iInstance, VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC), idCpu));    switch (enmType)    {        case PDMAPICIRQ_UPDATE_PENDING:            VMCPU_FF_SET(pVCpu, VMCPU_FF_UPDATE_APIC);            break;        case PDMAPICIRQ_HARDWARE:#ifdef VBOX_WITH_NEW_APIC            VMCPU_ASSERT_EMT_OR_NOT_RUNNING(pVCpu);#endif            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC);            break;        case PDMAPICIRQ_NMI:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_NMI);            break;        case PDMAPICIRQ_SMI:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_SMI);            break;        case PDMAPICIRQ_EXTINT:            VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_PIC);            break;        default:            AssertMsgFailed(("enmType=%d/n", enmType));            break;    }    /* We need to wake up the target CPU. */    if (#ifdef VBOX_WITH_NEW_APIC        /* We are already on EMT if enmType is PDMAPICIRQ_HARDWARE. Don't bother with poking! */        enmType != PDMAPICIRQ_HARDWARE &&#endif        VMMGetCpuId(pVM) != idCpu)    {        switch (VMCPU_GET_STATE(pVCpu))        {            case VMCPUSTATE_STARTED_EXEC:                GVMMR0SchedPokeEx(pVM, pVCpu->idCpu, false /* don't take the used lock */);                break;            case VMCPUSTATE_STARTED_HALTED:                GVMMR0SchedWakeUpEx(pVM, pVCpu->idCpu, false /* don't take the used lock */);                break;            default:                break; /* nothing to do in other states. */        }    }}
开发者ID:miguelinux,项目名称:vbox,代码行数:60,



注:本文中的AssertReturnVoid函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ AssertTrue函数代码示例
C++ AssertReturn函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。