• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Cpper
            C/C++高級工程師 Android高級軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語言 程序猿
            本著簡單,易用的設計原則
            我給蓋莫引擎加入了一個簡單的插件系統
            插件基類如下:
            class Plugin : public virtual RefCount 
            {
            public:
                
            virtual ~Plugin(){}
                
            virtual PLUGIN_FORMAT GetFormat()const  = 0;
                
            virtual engine_string GetMaker()const = 0;
                
            virtual engine_string GetDescription()const = 0;
                
            virtual void  GetVersion(int &main,int &sub,int &pitch) = 0;
            private:    
                
            virtual bool Init(void* data) = 0;
                
            virtual void Deinit(void* data) = 0;
                friend 
            class PluginFactory;
            };

            可以看出基本的插件方法有獲取插件格式,插件作者,插件描述,插件版本等
            下面的是簡單的插件工廠
            ////////////////////////////////////////////////////////////
            /// 定義引擎插件工廠(管理器)
            ////////////////////////////////////////////////////////////
            class GAPI PluginFactory : public Singleton<PluginFactory>
            {
            public:
                
            bool RegisterPlugin(Plugin* plugin);
                
            void UnRegisterPlugin(Plugin* plugin);
            };
            這是一個簡單的單件
            它只有2個函數注冊和反注冊插件
            使用的時候只要獲取插件指針
            然后傳入插件工廠注冊之后即可使用
            (注冊的本質就是根據插件類型設置必要的插件上下文數據)

            這種插件方法有它的弊端 不過在我看來最大的好處就是簡單咯

            下面是簡單的視頻播放插件咯
            ////////////////////////////////////////////////////////////
            /// 定義引擎視頻播放器(全局唯一)
            ////////////////////////////////////////////////////////////
            class VideoPlayer : public Plugin
            {
            public
                
            ///////////////////////////////////////////////////////
                
            /// 構造,析構視頻播放器
                
            ///////////////////////////////////////////////////////
                VideoPlayer(){}
                
            virtual ~VideoPlayer(){}
                   
            ///////////////////////////////////////////////////////
                
            /// 播放指定視頻
                
            ///////////////////////////////////////////////////////
                virtual bool Play(const engine_string& video) = 0
                
                
            ///////////////////////////////////////////////////////
                
            /// 視頻更新每幀調用 
                
            ///////////////////////////////////////////////////////    
                virtual bool Update() = 0
                
                
            ///////////////////////////////////////////////////////
                
            /// 停止并卸載視頻
                
            ///////////////////////////////////////////////////////
                virtual void Stop() = 0
                
                
            ///////////////////////////////////////////////////////
                
            /// 獲取,設置視頻當前音量(0-1)
                
            ///////////////////////////////////////////////////////    
                virtual float GetVolume()const = 0
                
            virtual void  SetVolume(float volume) = 0;
            };

            posted on 2010-06-23 14:10 ccsdu2009 閱讀(1568) 評論(0)  編輯 收藏 引用 所屬分類: Game引擎
             
            精品久久久久久国产牛牛app| 久久Av无码精品人妻系列| 国产精品xxxx国产喷水亚洲国产精品无码久久一区| 亚洲中文字幕无码久久2020| 亚洲国产精品无码久久98| 九九久久99综合一区二区| 久久精品国产一区二区三区不卡 | 久久99精品久久久久婷婷| 日本久久久精品中文字幕| 欧美亚洲国产精品久久高清| 久久99免费视频| 久久九九久精品国产免费直播| 国产精品久久自在自线观看| 九九精品久久久久久噜噜| 91久久成人免费| 国产精品美女久久久久| 人妻中文久久久久| 99久久亚洲综合精品成人| 一本色道久久88—综合亚洲精品| 国产亚洲精久久久久久无码AV| 亚洲精品无码久久久影院相关影片| 国产精品久久久天天影视香蕉| 东京热TOKYO综合久久精品 | 久久国产成人午夜aⅴ影院| 亚洲成色WWW久久网站| 久久精品综合网| 欧美精品丝袜久久久中文字幕 | 久久久国产亚洲精品| 久久综合成人网| 天天综合久久一二三区| 久久九九免费高清视频| 99久久精品免费看国产免费| 国产精品久久久久aaaa| 国产日产久久高清欧美一区| 久久国产乱子伦免费精品| 中文字幕热久久久久久久| 婷婷五月深深久久精品| 国产精品久久久久久| 狠狠色婷婷综合天天久久丁香| 久久综合狠狠色综合伊人| 国产精品一久久香蕉产线看|