HRESULT CLCDOutput::Initialize(lgLcdConnectContext* pContext, BOOL bUseWindow) { UNREFERENCED_PARAMETER(bUseWindow); DWORD res = ERROR_SUCCESS; CLCDManager::Initialize(); // initialize our screens LCD_MGR_LIST::iterator it = m_LCDMgrList.begin(); while(it != m_LCDMgrList.end()) { CLCDManager *pMgr = *it; LCDUIASSERT(NULL != pMgr); pMgr->Initialize(); ++it; } // LCD Stuff LCDUIASSERT(lInitCount >= 0); if(1 == InterlockedIncrement(&lInitCount)) { // need to call lgLcdInit once res = lgLcdInit(); if (ERROR_SUCCESS != res) { InterlockedDecrement(&lInitCount); LCDUITRACE(_T("WARNING: lgLcdInit failed\n")); return E_FAIL; } } m_lcdConnectCtxEx.appFriendlyName = _T("My App"); m_lcdConnectCtxEx.isPersistent = FALSE; m_lcdConnectCtxEx.isAutostartable = FALSE; m_lcdConnectCtxEx.connection = LGLCD_INVALID_CONNECTION; // Initialize the added version 3.0 API fields m_lcdConnectCtxEx.dwAppletCapabilitiesSupported = LGLCD_APPLET_CAP_BASIC; m_lcdConnectCtxEx.dwReserved1 = 0; m_lcdConnectCtxEx.onNotify.notificationCallback = NULL; m_lcdConnectCtxEx.onNotify.notifyContext = NULL; // if user passed in the context, fill it up if (NULL != pContext) { memcpy(&m_lcdConnectCtxEx, pContext, sizeof(lgLcdConnectContext)); } return S_OK; }
HRESULT CLCDOutput::Initialize(lgLcdConnectContext* pContext, BOOL bUseWindow) { UNREFERENCED_PARAMETER(bUseWindow); DWORD res = ERROR_SUCCESS; CLCDManager::Initialize(); // initialize our screens LCD_MGR_LIST::iterator it = m_LCDMgrList.begin(); while(it != m_LCDMgrList.end()) { CLCDManager *pMgr = *it; LOGIASSERT(NULL != pMgr); pMgr->Initialize(); ++it; } // LCD Stuff LOGIASSERT(lInitCount >= 0); if(1 == InterlockedIncrement(&lInitCount)) { // need to call lgLcdInit once res = lgLcdInit(); if (ERROR_SUCCESS != res) { InterlockedDecrement(&lInitCount); LOGITRACE(_T("WARNING: lgLcdInit failed\n")); return E_FAIL; } } m_lcdConnectCtx.appFriendlyName = _T("My App"); m_lcdConnectCtx.isPersistent = FALSE; m_lcdConnectCtx.isAutostartable = FALSE; m_lcdConnectCtx.connection = LGLCD_INVALID_CONNECTION; // if user passed in the context, fill it up if (NULL != pContext) { memcpy(&m_lcdConnectCtx, pContext, sizeof(lgLcdConnectContext)); } return S_OK; }