20 using Shared = std::shared_ptr<Simulator>;
22 using Weak = std::weak_ptr<Simulator>;
27 template <
typename Po
interT>
39 : _episode_id(other._episode_id),
40 _simulator(other._simulator) {}
54 return TryLock() !=
nullptr;
57 void Clear() noexcept;
This file contains definitions of common data structures used in traffic manager. ...
EpisodeProxyPointerType::Shared SharedPtrType
std::shared_ptr< Simulator > Shared
auto GetId() const noexcept
std::weak_ptr< Simulator > Weak
bool IsValid() const noexcept
A very simple atomic shared ptr with release-acquire memory order.
Provides access to the Simulator during a given episode.
EpisodeProxyImpl< EpisodeProxyPointerType::Weak > WeakEpisodeProxy
EpisodeProxyImpl(EpisodeProxyImpl< T > other)