バージョン 3.0 のコードを 4.0 に書き換える
バージョン 3.0 のコードを 4.0 に書き換えるときの手順は
1.ヘッダファイル中の HANDLER_DECLARE_??? マクロの第1引数 (クラス名) を削除する (変更後の引数は1つになる)。
// 修正前 HANDLER_DECLARE_VOIDVOID(CHelloWorld, OnKey) // 修正後 HANDLER_DECLARE_VOIDVOID(OnKey)
2.SFUIPEndpoint クラスを SFXSocketAddress クラスに置き換える。
3.SFUHostResolver クラスを SFXInetAddress クラスに置き換える。
4.コンパイルしてコンパイルが通るか確認する。
この時点で、 3.0 のクラスと 4.0 のクラスが共存した状態になっている。さらに 4.0 のクラスだけを利用する場合は、次へ進む。
5.コンパイラの設定やメイクファイルに
TARGET_COMPATIBILITY_ONLY400
マクロを設定する。
(SophiaFramework.hpp ファイルを読み込む前に #define してもよい。)
6.コンパイルしてエラーを確認する。
エラーが出力されず、正常に終了した場合は、すでに 4.0 のクラスに対応している。
7.alignof, clusterof マクロを align64of , cluster64of マクロに置き換える。
8.ToSInt32() 関数などが存在しないとエラーが出る場合は、AsSInt32() 関数などに適切に置き換える。(該当クラスのクラス定義ヘッダファイル *.h.hpp 中に新しい関数との対応関係が記述されています。)
例:SFXAnsiString::ToSInt32 関数は SFXAnsiString::AsSInt32 関数に変更する。
9.SFUHttpConnection クラスを SFXHTTPConnection クラスに置き換える。
10.SFUStream 系のクラス(SFUFileStream, SFUNetworkStream, SFUMemoryStream, SFUSourceStream)を SFXFile , SFXTCPSocket , SFXMemory , SFXSource クラスに置き換える。