gz/physics/Entity.hh
Go to the documentation of this file.
Definition: gz/physics/Entity.hh:43
bool operator<(const EntityPtr< OtherEntityT > &_other) const
Comparison operator.
bool operator>=(const EntityPtr< OtherEntityT > &_other) const
Comparison operator.
EntityPtr(const EntityPtr &)
EntityPtr & operator=(const EntityPtr< OtherEntityT > &_other)
Assign this to point at another compatible Entity.
EntityPtr(const std::shared_ptr< Pimpl > &_pimpl, const Identity &_identity)
Create an EntityPtr that points to the Entity tied to _identity.
EntityPtr & operator=(std::nullptr_t)
Assign this to point to an invalid Entity.
EntityPtr()=default
EntityPtr(const EntityPtr< OtherEntityT > &_other)
Create a new reference to another entity.
bool Valid() const
Check whether this is pointing at a valid Entity.
EntityPtr & operator=(const EntityPtr &)
std::size_t Hash() const
Produces a hash for the Entity that this EntityPtr is referring to. This function allows EntityPtr in...
EntityPtr(EntityPtr &&)=default
bool operator<=(const EntityPtr< OtherEntityT > &_other) const
Comparison operator.
EntityPtr(std::nullptr_t)
Create an EntityPtr that points to an invalid Entity.
EntityPtr & operator=(EntityPtr &&)=default
bool operator!=(const EntityPtr< OtherEntityT > &_other) const
Comparison operator.
EntityT * operator->() const
Drill operator. Access members of the Entity being pointed to. This does NOT check whether the Entity...
EntityPtr(std::nullopt_t)
Create an EntityPtr that points to an invalid Entity.
bool operator==(const EntityPtr< OtherEntityT > &_other) const
Comparison operator.
~EntityPtr()=default
EntityT & operator*() const
Dereference operator. Access a reference to the Entity being pointed to. This does NOT check whether ...
EntityPtr & operator=(std::nullopt_t)
Assign this to point to an invalid Entity.
bool operator>(const EntityPtr< OtherEntityT > &_other) const
Comparison operator.
This is the base class of all "proxy objects". The "proxy objects" are essentially interfaces into th...
Definition: gz/physics/Entity.hh:217
std::shared_ptr< Pimpl > pimpl
This is a pointer to the physics engine implementation, and it can be used by the object features to ...
Definition: gz/physics/Entity.hh:289
Identity identity
This field contains information to identify the entity.
Definition: gz/physics/Entity.hh:292
const Identity & FullIdentity() const
Get the Identity object of this Entity.
std::size_t EntityID() const
Get the unique ID value of this Entity.
Entity(std::shared_ptr< Pimpl > &&_pimpl, const Identity &_identity)
Constructor that allows the pimpl to be moved instead of copied.
const std::shared_ptr< void > & EntityReference() const
Get a reference-counting std::shared_ptr to the object inside the implementation that this object pro...
typename detail::DeterminePlugin< Policy, Features >::type Pimpl
Definition: gz/physics/Entity.hh:221
Entity(const std::shared_ptr< Pimpl > &_pimpl=nullptr, const Identity &_identity=Identity())
Constructor for the Entity.
FeatureT::template Implementation< PolicyT > * Interface()
Get a pointer to the implementation of FeatureT.
const FeatureT::template Implementation< PolicyT > * Interface() const
Same as Interface(), but const-qualified so that const entities can request const-qualified interface...
T max(T... args)
const std::size_t INVALID_ENTITY_ID
This constant-value should be used to indicate that an Entity ID is invalid (i.e. does not refer to a...
Definition: gz/physics/Entity.hh:38
This class can be used to request features from an entity, or identify what features are missing from...
Definition: gz/physics/RequestFeatures.hh:35