boost 1.33.0への対応作業を行ったあとmachineの実装を行っている。
対応作業は
・boost::serializationのshared_ptrの実装の変更に伴う変更。
・コンテナとスマートポインタの組み合わせをboost::ptr_xxxxコンテナへの変更。
である。
machineの実装は、machineをグルーピングするmachine(machines)を考慮した構造に変更している。
machineの構造であるが、トップのノードとしてmachinesのインスタンスがあり、その中にmachineやmachinesのインスタンスを保持する。machine間の接続情報はcableオブジェクトで保持する。
machine間の接続情報は、配列のインデックスによる保持をやめ、参照の保持に変更した。そのため、シリアライズ・デシリアライズする時にオブジェクトを特定する必要があるため、GUIDをメンバに持つようmachine_interfaceの変更を行った。