BOOL CCANopenFrame::PrepareSendFrame_InitiateSDODownload(DWORD p_ulCobId, BOOL p_oExpeditedTransfer, BOOL p_oSizeIndicated, BYTE p_ubNonValidNbOfBytes, WORD p_usIndex, BYTE p_ubSubIndex, void* p_pDataBuffer, DWORD p_ulDataBufferLength) { const int FRAME_SIZE = 8; const int COMMAND_SPECIFIER = 1; const unsigned long MAX_DATA_SIZE = 4; BOOL oResult(FALSE); ResetFrame(); if(p_pDataBuffer) { //Limit Values if(p_ulDataBufferLength > MAX_DATA_SIZE) p_ulDataBufferLength = MAX_DATA_SIZE; if(p_ubNonValidNbOfBytes > MAX_DATA_SIZE) p_ubNonValidNbOfBytes = MAX_DATA_SIZE; if(!p_oExpeditedTransfer || !p_oSizeIndicated) p_ubNonValidNbOfBytes = 0; //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.ccs = COMMAND_SPECIFIER; m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.n = p_ubNonValidNbOfBytes; m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.e = p_oExpeditedTransfer; m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.s = p_oSizeIndicated; m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.index = p_usIndex; m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.subIndex = p_ubSubIndex; memcpy(m_FrameBuffer.nCanData.sInitiateSDODownload_SendFrame.data, p_pDataBuffer, p_ulDataBufferLength); oResult = TRUE; } return oResult; }
BOOL CCANopenFrame::PrepareSendFrame_DownloadSDOSegment(DWORD p_ulCobId, BOOL p_oToggle, BYTE p_ubNonValidNbOfBytes, BOOL p_oNoMoreSegments, void* p_pSegDataBuffer, DWORD p_ulSegDataBufferLength) { const int FRAME_SIZE = 8; const int COMMAND_SPECIFIER = 0; const unsigned long MAX_DATA_SIZE = 7; BOOL oResult(FALSE); ResetFrame(); if(p_pSegDataBuffer) { //Limit Values if(p_ulSegDataBufferLength > MAX_DATA_SIZE) p_ulSegDataBufferLength = MAX_DATA_SIZE; if(p_ubNonValidNbOfBytes > MAX_DATA_SIZE) p_ubNonValidNbOfBytes = MAX_DATA_SIZE; //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.sDownloadSDOSegment_SendFrame.ccs = COMMAND_SPECIFIER; m_FrameBuffer.nCanData.sDownloadSDOSegment_SendFrame.n = p_ubNonValidNbOfBytes; m_FrameBuffer.nCanData.sDownloadSDOSegment_SendFrame.c = p_oNoMoreSegments; m_FrameBuffer.nCanData.sDownloadSDOSegment_SendFrame.t = p_oToggle; memcpy(m_FrameBuffer.nCanData.sDownloadSDOSegment_SendFrame.data, p_pSegDataBuffer, p_ulSegDataBufferLength); oResult = TRUE; } return oResult; }
TVizMapContext::TVizMapContext(PVizMap _VizMap): VizMap(_VizMap), VizMapFrameN(0), VizMapFrame(_VizMap->GetFirst()), SelMode(vmsmZoom), MgGlassPoints(0), MouseInP(false), LeftButtonDownP(false), MgGlassSize(0.2), NearPointN(-1) { LoadColor(); LoadCatFullNms(); ResetFrame(); }
BOOL CCANopenFrame::PrepareSendFrame_RequestCANFrame(DWORD p_ulCobId, BYTE p_ubLength) { const int MAX_FRAME_SIZE = 8; ResetFrame(); //Limit Values if(p_ubLength > MAX_FRAME_SIZE) p_ubLength = MAX_FRAME_SIZE; //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = TRUE; m_FrameBuffer.wDlc = p_ubLength; return TRUE; }
void NeuroSandCube::Update() { m_spCommandController->PollCommands(); if (player->levelRestart) { ResetLevel(); } StateDistributor::GetInstance().Distribute(); m_spIOService->Update(); ResetFrame(); }
BOOL CCANopenFrame::PrepareSendFrame_SendNMTService(BYTE p_ubCommandSpecifier, BYTE p_ubNodeId) { const int COB_ID = 0; const int FRAME_SIZE = 2; ResetFrame(); //Frame m_FrameBuffer.dId = COB_ID; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.aDataByte[0] = p_ubCommandSpecifier; m_FrameBuffer.nCanData.aDataByte[1] = p_ubNodeId; return TRUE; }
BOOL CCANopenFrame::PrepareSendFrame_UploadSDOSegment(DWORD p_ulCobId, BOOL p_oToggle) { const int FRAME_SIZE = 8; const int COMMAND_SPECIFIER = 3; ResetFrame(); //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.sUploadSDOSegment_SendFrame.ccs = COMMAND_SPECIFIER; m_FrameBuffer.nCanData.sUploadSDOSegment_SendFrame.t = p_oToggle; return TRUE; }
BOOL CCANopenFrame::PrepareSendFrame_InitiateSDOUpload(DWORD p_ulCobId, WORD p_usIndex, BYTE p_ubSubIndex) { const int FRAME_SIZE = 8; const int COMMAND_SPECIFIER = 2; ResetFrame(); //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.sInitiateSDOUpload_SendFrame.ccs = COMMAND_SPECIFIER; m_FrameBuffer.nCanData.sInitiateSDOUpload_SendFrame.index = p_usIndex; m_FrameBuffer.nCanData.sInitiateSDOUpload_SendFrame.subIndex = p_ubSubIndex; return TRUE; }
BOOL CCANopenFrame::PrepareSendFrame_AbortSDOTransfer(DWORD p_ulCobId, WORD p_usIndex, BYTE p_ubSubIndex, DWORD p_ulAbortCode) { const int FRAME_SIZE = 8; const int COMMAND_SPECIFIER = 4; ResetFrame(); //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.sAbortTransfer_AbortFrame.cs = COMMAND_SPECIFIER; m_FrameBuffer.nCanData.sAbortTransfer_AbortFrame.index = p_usIndex; m_FrameBuffer.nCanData.sAbortTransfer_AbortFrame.subIndex = p_ubSubIndex; m_FrameBuffer.nCanData.sAbortTransfer_AbortFrame.abortCode = p_ulAbortCode; return TRUE; }
BOOL CCANopenFrame::PrepareSendFrame_NetworkIndication(DWORD p_ulCobId, WORD p_usTargetNetworkId, BYTE p_ubTargetNodeId) { const int FRAME_SIZE = 8; const int COMMAND_SPECIFIER = 7; ResetFrame(); //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = FRAME_SIZE; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.ccs = COMMAND_SPECIFIER; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.r = 0; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.m1 = p_usTargetNetworkId; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.m2 = p_ubTargetNodeId; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.reserved[0] = 0; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.reserved[1] = 0; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.reserved[2] = 0; m_FrameBuffer.nCanData.sNetworkIndication_SendFrame.reserved[3] = 0; return TRUE; }
BOOL CCANopenFrame::PrepareSendFrame_SendCANFrame(DWORD p_ulCobId, BYTE p_ubLength, void* p_pDataBuffer, DWORD p_ulDataBufferLength) { const unsigned long MAX_FRAME_SIZE = 8; BOOL oResult(FALSE); ResetFrame(); if(p_pDataBuffer) { //Limit Values if(p_ulDataBufferLength > MAX_FRAME_SIZE) p_ulDataBufferLength = MAX_FRAME_SIZE; //Frame m_FrameBuffer.dId = p_ulCobId; m_FrameBuffer.oRtr = FALSE; m_FrameBuffer.wDlc = (WORD)p_ulDataBufferLength; memcpy(m_FrameBuffer.nCanData.aDataByte, p_pDataBuffer, p_ulDataBufferLength); oResult = TRUE; } return oResult; }
bool BMDOpenGLOutput::Start() { IDeckLinkDisplayModeIterator* pDLDisplayModeIterator; IDeckLinkDisplayMode* pDLDisplayMode = NULL; // Get first avaliable video mode for Output if (pDLOutput->GetDisplayModeIterator(&pDLDisplayModeIterator) == S_OK) { if (pDLDisplayModeIterator->Next(&pDLDisplayMode) != S_OK) { QMessageBox::critical(NULL,"DeckLink error.", "Cannot find video mode."); pDLDisplayModeIterator->Release(); return false; } pDLDisplayModeIterator->Release(); } uiFrameWidth = pDLDisplayMode->GetWidth(); uiFrameHeight = pDLDisplayMode->GetHeight(); pDLDisplayMode->GetFrameRate(&frameDuration, &frameTimescale); uiFPS = ((frameTimescale + (frameDuration-1)) / frameDuration); if (pDLOutput->EnableVideoOutput(pDLDisplayMode->GetDisplayMode(), bmdVideoOutputFlagDefault) != S_OK) return false; // Flip frame vertical, because OpenGL rendering starts from left bottom corner if (pDLOutput->CreateVideoFrame(uiFrameWidth, uiFrameHeight, uiFrameWidth*4, bmdFormat8BitBGRA, bmdFrameFlagFlipVertical, &pDLVideoFrame) != S_OK) return false; uiTotalFrames = 0; ResetFrame(); SetPreroll(); pContext->makeCurrent(); pGLScene->InitScene(); glGenFramebuffersEXT(1, &idFrameBuf); glGenRenderbuffersEXT(1, &idColorBuf); glGenRenderbuffersEXT(1, &idDepthBuf); glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, idFrameBuf); glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, idColorBuf); glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_RGBA8, uiFrameWidth, uiFrameHeight); glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, idDepthBuf); glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, uiFrameWidth, uiFrameHeight); glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_RENDERBUFFER_EXT, idColorBuf); glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, idDepthBuf); glStatus = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT); if (glStatus != GL_FRAMEBUFFER_COMPLETE_EXT) { QMessageBox::critical(NULL,"OpenGL initialization error.", "Cannot initialize framebuffer."); return false; } pFrameBuf = (char*)malloc(pDLVideoFrame->GetRowBytes() * uiFrameHeight); UpdateScene(); pDLOutput->StartScheduledPlayback(0, 100, 1.0); return true; }
void TVizMapContext::SetVizMapFrame(const int& NewVizMapFrameN) { VizMapFrameN = NewVizMapFrameN; VizMapFrame = VizMap->GetVizMapFrame(VizMapFrameN); ResetFrame(); }