Пример #1
0
/*********************************************************************************************************
** 函数名称: LoadConfData
** 函数名称: LoadConfData
**
** 功能描述: 从flash加载配置信息
**
** 输 入:  CRamMain * pRam
**          
** 输 出:  INT8U
**         
** 全局变量:  
** 调用模块: 无
**
** 作 者:  LiJin
** 日 期:  2008年9月18日
** 备  注: 
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
** 备  注: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
static INT8U LoadConfData(CRamMain *pRam)
{
	INT8U err = 0;
	INT16U nRet = 0;
	INT8U bRet = FALSE;
	INT8U *pBuff = NULL;
	INT32U nDataLen = 0; 
	INT32U nRetLen = 0;

	if (pRam == NULL)
		return FALSE;

 //	LoadFlashData();
	
	//加载FCB
	nRet = LoadFcb( & pRam->Fcb,&err);
	if (nRet < sizeof(FCB) || nRet == 0)
		return FALSE;

	//加载BIN文件到内存中
	bRet = GetBinDataBuff(&pBuff,&nDataLen );
	if (bRet == FALSE)
		return FALSE;
	//解析BIN
	nRetLen = LoadBinData(pBuff, &pRam->BinData );
	if (nRetLen != nDataLen)
		return FALSE;

	return TRUE;
}
Пример #2
0
    O3DGCErrorCode    CompressedTriangleFans::Load(const BinaryStream & bstream, 
                                                   unsigned long & iterator, 
                                                   O3DGCSC3DMCStreamType streamType) 
    {
#ifdef DEBUG_VERBOSE
        g_fileDebugTF = fopen("Load_new.txt", "w");
#endif //DEBUG_VERBOSE
        if (streamType == O3DGC_SC3DMC_STREAM_TYPE_ASCII)
        {
            LoadUIntData(m_numTFANs  , bstream, iterator);
            LoadUIntData(m_degrees   , bstream, iterator);
            LoadUIntData(m_configs   , bstream, iterator);
            LoadBinData (m_operations, bstream, iterator);
            LoadIntData (m_indices   , bstream, iterator);
        }
        else
        {
            LoadIntACEGC(m_numTFANs  , 4 , bstream, iterator);
            LoadIntACEGC(m_degrees   , 16, bstream, iterator);
            LoadUIntAC  (m_configs   , 10, bstream, iterator);
            LoadBinAC   (m_operations,     bstream, iterator);
            LoadIntACEGC(m_indices   , 8 , bstream, iterator);
        }

#ifdef DEBUG_VERBOSE
        fclose(g_fileDebugTF);
#endif //DEBUG_VERBOSE
        return O3DGC_OK;
    }