HRESULT CFrameProcessor_Common::EnableFilter(USHORT ushBlk, BOOL bEnable) { HRESULT hResult = S_OK; // Check if at least one filtering datum is available. // If so, return S_OK else S_FALSE m_bFilterON = bEnable; USHORT ushLogBlks = (USHORT) (m_omLogObjectArray.GetSize()); for (USHORT i = 0; i < ushLogBlks; i++) { CBaseLogObject* pouCurrLogObj = m_omLogObjectArray.GetAt(i); if (FOR_ALL == ushBlk) { pouCurrLogObj->EnableFilter(bEnable); } else { if (ushBlk == i) { pouCurrLogObj->EnableFilter(bEnable); break; } } } return hResult; }
HRESULT CFrameProcessor_Common::GetConfigData(xmlNodePtr pxmlNodePtr) { /*BYTE* pbBuff = new BYTE[unGetBufSize()]; *ppvConfigData = pbBuff;*/ CLogObjArray* pomCurrArray = GetActiveLogObjArray(); BYTE bVersion = VERSION_CURR; //COPY_DATA(pbBuff, &bVersion, sizeof(bVersion)); USHORT ushLogBlks = (USHORT) (pomCurrArray->GetSize()); //COPY_DATA(pbBuff, &ushLogBlks, sizeof(ushLogBlks)); for (USHORT i = 0; i < ushLogBlks; i++) { xmlNodePtr pNodeLogBlckPtr = xmlNewNode(NULL, BAD_CAST DEF_LOG_BLOCK); xmlAddChild(pxmlNodePtr, pNodeLogBlckPtr); CBaseLogObject* pouLogObj = pomCurrArray->GetAt(i); if (NULL != pouLogObj) { pouLogObj->GetConfigData(pNodeLogBlckPtr); } else { ASSERT(FALSE); } } // unLength = unGetBufSize(); return S_OK; }
void CFrameProcessor_Common::vAddLogFile( CLogObjArray& omLogListTmp, CBaseLogObject*& pouBaseLogObj) { int nCount = omLogListTmp.GetSize(); BOOL bDuplicate = FALSE; if(nCount == 0) { omLogListTmp.Add(pouBaseLogObj); } else { for(int i = 0; i < nCount; i++) { CBaseLogObject* pBaseObjectSrc = omLogListTmp.GetAt(i); SLOGINFO sLogInfo1, sLogInfo2; pouBaseLogObj->GetLogInfo(sLogInfo1); pBaseObjectSrc->GetLogInfo(sLogInfo2); //TODO::CString Has to be Remodved CString omStr1 = sLogInfo1.m_sLogFileName; CString omStr2 = sLogInfo2.m_sLogFileName; omStr1.TrimLeft(" \n\t"); omStr1.TrimRight(" \n\t"); omStr2.TrimLeft(" \n\t"); omStr2.TrimRight(" \n\t"); if(omStr1 == omStr2) { bDuplicate = TRUE; } } if(bDuplicate == FALSE) { omLogListTmp.Add(pouBaseLogObj); } } }
// Setter for the logging configuration data HRESULT CFrameProcessor_Common::SetConfigData(BYTE* pvDataStream, const CString& omStrVersion) { if (FALSE == bIsEditingON()) { return S_FALSE; } ClearLoggingBlockList(); BYTE* pbBuff = pvDataStream; BYTE bVersion = 0; USHORT ushLogBlks = 0; COPY_DATA_2(&bVersion, pbBuff, sizeof(bVersion)); COPY_DATA_2(&ushLogBlks, pbBuff, sizeof(ushLogBlks)); m_omStrVersion = omStrVersion; for (USHORT i = 0; i < ushLogBlks; i++) { CBaseLogObject* pouBaseLogObj = CreateNewLogObj(m_omStrVersion); pbBuff = pouBaseLogObj->SetConfigData(pbBuff, bVersion); m_omLogListTmp.Add(pouBaseLogObj); } return S_OK; }
// Getter for the logging configuration data HRESULT CFrameProcessor_Common::GetConfigData(BYTE** ppvConfigData, UINT& unLength) { BYTE* pbBuff = new BYTE[unGetBufSize()]; *ppvConfigData = pbBuff; CLogObjArray* pomCurrArray = GetActiveLogObjArray(); BYTE bVersion = VERSION_CURR; COPY_DATA(pbBuff, &bVersion, sizeof(bVersion)); USHORT ushLogBlks = (USHORT) (pomCurrArray->GetSize()); COPY_DATA(pbBuff, &ushLogBlks, sizeof(ushLogBlks)); for (USHORT i = 0; i < ushLogBlks; i++) { CBaseLogObject* pouLogObj = pomCurrArray->GetAt(i); if (NULL != pouLogObj) { pbBuff = pouLogObj->GetConfigData(pbBuff); } else { ASSERT(FALSE); } } unLength = unGetBufSize(); return S_OK; }
HRESULT CFrameProcessor_Common::LogString(CString& omStr) { USHORT ushLogBlks = (USHORT) (m_omLogObjectArray.GetSize()); for (USHORT i = 0; i < ushLogBlks; i++) { CBaseLogObject* pouCurrLogObj = m_omLogObjectArray.GetAt(i); pouCurrLogObj->bLogString(omStr); } return S_OK; }
HRESULT CFrameProcessor_Common::GetLoggingBlock(USHORT ushBlk, SLOGINFO& sLogObject) { HRESULT hResult = S_FALSE; CBaseLogObject* pouLogObj = FindLoggingBlock(ushBlk); if (pouLogObj != NULL) { pouLogObj->GetLogInfo(sLogObject); hResult = S_OK; } return hResult; }
//MVN HRESULT CFrameProcessor_Common::SetConfigData( xmlDocPtr pDoc, ETYPE_BUS eBus) { if (FALSE == bIsEditingON()) { return S_FALSE; } ClearLoggingBlockList(); USHORT ushLogBlks = 0; xmlChar* pchXpath = NULL; xmlXPathObjectPtr pXpathPtr = NULL; if(eBus == CAN) { pchXpath = (xmlChar*)"//BUSMASTER_CONFIGURATION/Module_Configuration/CAN_Log/Log_Block"; } else if(eBus == J1939) { pchXpath = (xmlChar*)"//BUSMASTER_CONFIGURATION/Module_Configuration/J1939_Log/Log_Block"; } else if(eBus == LIN) { pchXpath = (xmlChar*)"//BUSMASTER_CONFIGURATION/Module_Configuration/LIN_Log/Log_Block"; } pXpathPtr = xmlUtils::pGetNodes(pDoc, pchXpath); xmlNodePtr pNodePtr; if ( pXpathPtr != NULL) { xmlNodeSetPtr pNodeSet = pXpathPtr->nodesetval; if(pNodeSet != NULL) { ushLogBlks = pNodeSet->nodeNr; for(int i = 0; i < ushLogBlks; i++) { CBaseLogObject* pouBaseLogObj = CreateNewLogObj(m_omStrVersion); if ( S_OK == pouBaseLogObj->nSetConfigData(pNodeSet->nodeTab[i])) { vAddLogFile(m_omLogListTmp, pouBaseLogObj); //m_omLogListTmp.Add(pouBaseLogObj); } } } } return S_OK; }
void CFrameProcessor_J1939::FPJ1_vCloseLogFile(void) { USHORT ushBlocks = (USHORT) (m_omLogObjectArray.GetSize()); CBaseLogObject* pouCurrLogObj = NULL; for (USHORT i = 0; i < ushBlocks; i++) { pouCurrLogObj = m_omLogObjectArray.GetAt(i); if (pouCurrLogObj != NULL) { pouCurrLogObj->bStopOnlyLogging(); } } }
void CFrameProcessor_Common::vCloseLogFile() { USHORT ushBlocks = (USHORT) (m_omLogObjectArray.GetSize()); CBaseLogObject* pouCurrLogObj = NULL; for (USHORT i = 0; i < ushBlocks; i++) { pouCurrLogObj = m_omLogObjectArray.GetAt(i); if (NULL == pouCurrLogObj) { pouCurrLogObj->vCloseLogFile(); } } }
void CFrameProcessor_CAN::FPC_vCloseLogFile() { USHORT ushBlocks = (USHORT) (m_omLogObjectArray.GetSize()); CBaseLogObject* pouCurrLogObj = nullptr; for (USHORT i = 0; i < ushBlocks; i++) { pouCurrLogObj = m_omLogObjectArray.GetAt(i); if (pouCurrLogObj != nullptr) { pouCurrLogObj->bStopOnlyLogging(); //pouCurrLogObj->vCloseLogFile(); } } }
HRESULT CFrameProcessor_Common::EnableLogging(BOOL bEnable, ETYPE_BUS eBus) { HRESULT hResult = S_FALSE; /* Modus operandi: If logging is to be enabled, then first perform the initial tasks and then assign TRUE to m_bLogEnabled. If logging is to be disabled, first assign FALSE to m_bLogEnabled and then only perform the other tasks. Else crash / unexpected behaviour may result */ USHORT ushBlocks = (USHORT) (m_omLogObjectArray.GetSize()); //update reset flag m_bResetAbsTime = bEnable; GetLocalTime(&m_LogSysTime); if (ushBlocks > 0) { if (FALSE == bEnable) { m_bLogEnabled = bEnable; } for (USHORT i = 0; i < ushBlocks; i++) { CBaseLogObject* pouCurrLogObj = m_omLogObjectArray.GetAt(i); if (TRUE == bEnable) { pouCurrLogObj->bStartLogging(eBus); } else { pouCurrLogObj->bStopLogging(); } } if (TRUE == bEnable) { m_bLogEnabled = bEnable; m_sDataCopyThread.m_unActionCode = CREATE_TIME_MAP; } hResult = S_OK; } else { m_bLogEnabled = FALSE; //desable the control } return hResult; }
UINT CFrameProcessor_Common::unGetBufSize(void) { UINT unBufSize = sizeof(BYTE); // Version information unBufSize += sizeof(USHORT); // Logging blocks USHORT ushLogBlks = GetLoggingBlockCount(); for (USHORT i = 0; i < ushLogBlks; i++) { CBaseLogObject* pouCurrLogObj = FindLoggingBlock(i); if (NULL != pouCurrLogObj) { unBufSize += pouCurrLogObj->unGetBufSize(); } } return unBufSize; }
HRESULT CFrameProcessor_Common::SetLoggingBlock(USHORT ushBlk, const SLOGINFO& sLogObject) { HRESULT hResult = S_FALSE; if (bIsEditingON()) { CBaseLogObject* pouLogObj = FindLoggingBlock(ushBlk); if (pouLogObj != NULL) { pouLogObj->SetLogInfo(sLogObject); hResult = S_OK; } } return hResult; }
void CFrameProcessor_Common::SetChannelBaudRateDetails (void* controllerDetails, int nNumChannels,ETYPE_BUS eBus) { CLogObjArray* pomCurrArray = GetActiveLogObjArray(); if (NULL != pomCurrArray) { for (int nIdx = 0; nIdx < pomCurrArray->GetSize(); nIdx++) { CBaseLogObject* pouCurrLogObj = pomCurrArray->GetAt(nIdx); if (NULL != pouCurrLogObj) { pouCurrLogObj->Der_SetChannelBaudRateDetails(controllerDetails, nNumChannels); } } } }
HRESULT CFrameProcessor_Common::SetDatabaseFiles(const CStringArray& omList) { HRESULT hResult = S_OK; // Success is default assumption CLogObjArray* pomCurrArray = GetActiveLogObjArray(); if (NULL != pomCurrArray) { for (int nIdx = 0; nIdx < pomCurrArray->GetSize(); nIdx++) { CBaseLogObject* pouCurrLogObj = pomCurrArray->GetAt(nIdx); if (NULL != pouCurrLogObj) { pouCurrLogObj->Der_SetDatabaseFiles(omList); } } } return hResult; }
HRESULT CFrameProcessor_Common::AddLoggingBlock(const SLOGINFO& sLogObject) { HRESULT hResult = S_FALSE; if (bIsEditingON()) { CBaseLogObject* pouCurrLogBlk = CreateNewLogObj(m_omStrVersion); if (NULL != pouCurrLogBlk) { pouCurrLogBlk->SetLogInfo(sLogObject); m_omLogListTmp.Add(pouCurrLogBlk); hResult = S_OK; } else { ASSERT(FALSE); } } return hResult; }
HRESULT CFrameProcessor_Common::EnableLoggingBlock(USHORT ushBlk, BOOL bEnable) { HRESULT hResult = S_FALSE; CBaseLogObject* pouLogObj = FindLoggingBlock(ushBlk); if (NULL != pouLogObj) { if (pouLogObj->IsLoggingEnable() != bEnable) { pouLogObj->EnableLogging(bEnable); hResult = S_OK; } } if (S_OK == hResult) { vUpdateLoggingFlag(); } return hResult; }