DigitalCurling3
1.0.0
A curling simulation system for curling AIs
|
ISimulator の状態を保存するストレージ More...
#include <i_simulator_storage.hpp>
Public Member Functions | |
virtual std::unique_ptr< ISimulator > | CreateSimulator () const =0 |
このストレージが持つ状態と同じ状態を持つシミュレータを生成する More... | |
virtual std::string | GetSimulatorId () const =0 |
対応するシミュレータのシミュレータIDを得る. More... | |
Protected Member Functions | |
ISimulatorStorage (ISimulatorStorage const &)=default | |
コピーコンストラクタ.何もコピーしません.サブクラスでのdefault実装をサポートするためのものです. | |
ISimulatorStorage & | operator= (ISimulatorStorage const &)=default |
コピー代入演算子.何もコピーしません.サブクラスでのdefault実装をサポートするためのものです. | |
ISimulator の状態を保存するストレージ
ISimulator::Load() や ISimulatorStorage::CreateSimulator() を用いてストレージから状態を復元した場合, ISimulator は ISimulator::Save() や ISimulator::CreateStorage() を用いてセーブした時点の内部状態を完全に復元します. 言い換えると,あるストレージに保存された状態を復元した後のシミュレーションは,そのストレージに保存した時点からのシミュレーションと同じものになります.
ストレージは ISimulator のそれぞれの実装と対応関係にあるため, GetSimulatorId() で得られるIDが一致していない場合は保存/復元はできません.
|
pure virtual |
このストレージが持つ状態と同じ状態を持つシミュレータを生成する
|
pure virtual |
対応するシミュレータのシミュレータIDを得る.
シミュレータIDはシミュレータの種類ごとに異なる.