版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、格式化碼流編解碼組件,迅雷軟件架構(gòu)師王 衛(wèi) 華,主 要 內(nèi) 容,概述如何使用本組件組件組成編譯器,主 要 內(nèi) 容,概述如何使用本組件組件組成編譯器,概述,4,實現(xiàn)格式化(結(jié)構(gòu)化)數(shù)據(jù)靈活、高效地自動化編解碼跨Linux/Windows平臺服務(wù)器和客戶端共用一份代碼,極大提高研發(fā)效率良好的前后兼容性命名空間為xl::component::format_stream,特性,5,應(yīng)用領(lǐng)域,網(wǎng)絡(luò)通訊命令解析格
2、式化數(shù)據(jù)存儲,6,支持的數(shù)據(jù)種類,uint8/sint8uint16/sint16uint32/uint32uint64/sint64float32/float64String自定義結(jié)構(gòu)(message),7,所有的通訊命令中,前3個域必須為命令版本、命令序號、命令長度,且“命令長度”域指該域后所有數(shù)據(jù)長度,這3個域都是uint32數(shù)據(jù)類型,各占4各字節(jié),計12個字節(jié)對于通訊命令中的自定義結(jié)構(gòu),在編碼時需要在這個自定義結(jié)構(gòu)
3、前添加4個字節(jié),表示該自定義結(jié)構(gòu)所占的字節(jié),解密時要處理這4個添加的字節(jié),重申通訊命令編碼規(guī)范,8,為了保證組件前后的兼容性,組件有兩個限制通訊命令中的域只能增加,不能減少 新增加的域放在最后,組件的限制,9,主 要 內(nèi) 容,概述如何使用本組件組件組成編譯器,如何使用本組件,10,Linux平臺,makefile中添加路徑/usr/local/makefile中包括庫libxl_format_stream.so、lib
4、xl_lib.so,由于依賴關(guān)系,庫的順序不要顛倒,11,Windows平臺,C/C++選項“附加包含目錄”中添加文件夾/xl_component/format_stream所在的路徑鏈接器選項“輸入”中添加庫xl_format_stream.lib、xl_lib_static.lib。,12,主 要 內(nèi) 容,概述如何使用本組件組件組成編譯器,組件組成(主要類),13,message,格式化碼流編解碼組件最基本的抽象類,通
5、訊命令和自定義結(jié)構(gòu)都繼承自該類,是用戶打交道最多的類 uint32 get_buffer_size() bool encode() bool decode() bool copy_from()void clear(),14,其他類,reflection descriptorfield_descriptorrepeated_field、repeated_ptr_field format,15,主 要 內(nèi) 容,概述
6、如何使用本組件組件組成編譯器,編譯器,16,幾個概念,段:通訊命令為一個全局段,段名為globalsection,自定義結(jié)構(gòu)也是一個段自定義結(jié)構(gòu):通訊命令中定義的數(shù)據(jù)類型 引入結(jié)構(gòu):在其他通訊命令中定義的數(shù)據(jù)類型,但被本通訊命令使用,17,編譯器的約定,編輯器生成的配置文件名后綴為ini,且配置文件名稱即為通訊命令的名稱 每一個通訊命令和自定義結(jié)構(gòu)產(chǎn)生的類繼承自message輸入的字符全部為小寫(基于公共庫規(guī)范) 編輯器中
7、,通訊命令的前3個域分別為version、sequence、length,數(shù)據(jù)種類為uint32,不能被編輯、修改、刪除,18,重點關(guān)注三種重復(fù)域數(shù)據(jù)類型,基本數(shù)據(jù)類型 stringmessage,19,設(shè)置m_length,調(diào)用message. get_buffer_size()獲得整個通訊命令所需的緩存大小減去12即為m_length的值,20,編譯器的操作,21,附:公共庫1.1添加內(nèi)容,讀配置文件類:config 支持段
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- amr編解碼格式介紹
- Turbo碼的編解碼研究.pdf
- 電腦格式化方法
- 提示“磁盤未被格式化,是否格式化”的解決方法
- ISDB-T系統(tǒng)TS碼流編解碼軟件設(shè)計與實現(xiàn).pdf
- 極化碼的編解碼研究及仿真.pdf
- 高效LDPC碼編解碼技術(shù)研究.pdf
- 噴泉碼編解碼技術(shù)與應(yīng)用研究.pdf
- 極化碼編解碼算法研究及其硬件設(shè)計.pdf
- 畢業(yè)論文(格式化).doc
- 格式化文檔的教學(xué)設(shè)計
- RS碼、LDPC碼級聯(lián)編解碼器的FPGA實現(xiàn).pdf
- 第2章格式化文檔
- 高速幀同步格式化器.pdf
- 細(xì)節(jié)決定成敗--格式化管理
- 如何低級格式化硬盤
- RS碼與LDPC碼級聯(lián)編解碼器的FPGA實現(xiàn).pdf
- 編解碼基礎(chǔ)-
- 格式化后病毒還在怎么解決
- 文檔的格式化教學(xué)設(shè)計課件
評論
0/150
提交評論