CUGL 2.5
Cornell University Game Library
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
cugl::physics2::net::PhysObstEvent Class Reference

#include <CUPhysObstEvent.h>

Inheritance diagram for cugl::physics2::net::PhysObstEvent:
cugl::physics2::net::NetEvent

Classes

class  BoolConsts
 
class  FloatConsts
 

Public Types

enum class  EventType : int {
  UNKNOWN = 0 , CREATION = 1 , DELETION = 2 , BODY_TYPE = 3 ,
  POSITION = 4 , VELOCITY = 5 , ANGLE = 6 , ANGULAR_VEL = 7 ,
  BOOL_CONSTS = 8 , FLOAT_CONSTS = 9 , OWNER_ACQUIRE = 10 , OWNER_RELEASE = 11
}
 

Public Member Functions

EventType getType () const
 
Uint64 getObstacleId () const
 
Uint32 getFactoryId () const
 
const std::shared_ptr< std::vector< std::byte > > getPackedParam () const
 
void initCreation (Uint32 factoryId, Uint64 obsId, std::shared_ptr< std::vector< std::byte > > packedParam)
 
void initDeletion (Uint64 obsId)
 
void initPos (Uint64 obsId, Vec2 pos)
 
void initVel (Uint64 obsId, Vec2 vel)
 
void initAngle (Uint64 obsId, float angle)
 
void initAngularVel (Uint64 obsId, float angularVel)
 
void initBodyType (Uint64 obsId, b2BodyType bodyType)
 
void initBoolConsts (Uint64 obsId, const BoolConsts &values)
 
void initFloatConsts (Uint64 obsId, const FloatConsts &values)
 
void initOwnerAcquire (Uint64 obsId, Uint64 duration)
 
void initOwnerRelease (Uint64 obsId)
 
std::shared_ptr< NetEventnewEvent () override
 
const b2BodyType getBodyType () const
 
const Vec2 getPosition () const
 
const Vec2 getLinearVelocity () const
 
float getAngle () const
 
const float getAngularVelocity () const
 
bool isEnabled () const
 
bool isAwake () const
 
bool isSleepingAllowed () const
 
bool isBullet () const
 
bool isFixedRotation () const
 
float getGravityScale () const
 
float getLinearDamping () const
 
float getAngularDamping () const
 
float getDensity () const
 
float getFriction () const
 
float getRestitution () const
 
bool isSensor () const
 
const Vec2 getCentroid () const
 
float getInertia () const
 
float getMass () const
 
std::vector< std::byte > serialize () override
 
void deserialize (const std::vector< std::byte > &data) override
 
- Public Member Functions inherited from cugl::physics2::net::NetEvent
virtual std::shared_ptr< NetEventnewEvent ()
 
virtual std::vector< std::byte > serialize ()
 
virtual void deserialize (const std::vector< std::byte > &data)
 
Uint64 getEventTimeStamp () const
 
Uint64 getReceiveTimeStamp () const
 
const std::string getSourceId () const
 

Static Public Member Functions

static std::shared_ptr< PhysObstEventallocCreation (Uint32 factoryId, Uint64 obsId, std::shared_ptr< std::vector< std::byte > > packedParam)
 
static std::shared_ptr< PhysObstEventallocDeletion (Uint64 obsId)
 
static std::shared_ptr< PhysObstEventallocPos (Uint64 obsId, Vec2 pos)
 
static std::shared_ptr< PhysObstEventallocVel (Uint64 obsId, Vec2 vel)
 
static std::shared_ptr< PhysObstEventallocAngle (Uint64 obsId, float angle)
 
static std::shared_ptr< PhysObstEventallocAngularVel (Uint64 obsId, float angularVel)
 
static std::shared_ptr< PhysObstEventallocBodyType (Uint64 obsId, b2BodyType bodyType)
 
static std::shared_ptr< PhysObstEventallocBoolConsts (Uint64 obsId, const BoolConsts &values)
 
static std::shared_ptr< PhysObstEventallocFloatConsts (Uint64 obsId, const FloatConsts &values)
 
static std::shared_ptr< PhysObstEventallocOwnerAcquire (Uint64 obsId, Uint64 duration)
 
static std::shared_ptr< PhysObstEventallocOwnerRelease (Uint64 obsId)
 

Protected Attributes

EventType _type
 
Uint64 _obstacleId
 
Uint32 _factoryId
 
std::shared_ptr< std::vector< std::byte > > _packedParam
 
Vec2 _pos
 
Vec2 _vel
 
float _angle
 
float _angularVel
 
bool _isStatic
 
bool _isEnabled
 
bool _isAwake
 
bool _isSleepingAllowed
 
bool _isFixedRotation
 
bool _isBullet
 
bool _isSensor
 
float _density
 
float _friction
 
float _restitution
 
float _linearDamping
 
float _angularDamping
 
float _gravityScale
 
float _mass
 
float _inertia
 
Vec2 _centroid
 
b2BodyType _bodyType
 
Uint64 _duration
 
LWSerializer _serializer
 
LWDeserializer _deserializer
 

Detailed Description

This class represents an event for an obstacle state change.

These events are created when the user sets the position or velocity manually, outside of the simulation. It includes all changes to the object state.

Instances of this class will be created automatically by the physics world and gathered by the network controller.

Member Enumeration Documentation

◆ EventType

Enum for the type of the event.

Enumerator
UNKNOWN 

An unknown event

CREATION 

The creation of an obstacle

DELETION 

The delection of an obstacle

BODY_TYPE 

A change in body type

POSITION 

A change in position

VELOCITY 

A change in velocity

ANGLE 

A change in angle

ANGULAR_VEL 

A change in angular velocity

BOOL_CONSTS 

A change in (other) boolean constants

FLOAT_CONSTS 

A change in (other) float constants

OWNER_ACQUIRE 

A new owner acquiring this object

OWNER_RELEASE 

An owner releasing this object

Member Function Documentation

◆ allocAngle()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocAngle ( Uint64  obsId,
float  angle 
)
inlinestatic

Returns a newly created EventType::ANGLE event.

This method is a shortcut for creating a shared object on initAngle.

Parameters
obsIdThe obstacle global id
angleThe obstacle angle
Returns
a newly created EventType::ANGLE event.

◆ allocAngularVel()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocAngularVel ( Uint64  obsId,
float  angularVel 
)
inlinestatic

Returns a newly created EventType::ANGULAR_VEL event.

This method is a shortcut for creating a shared object on initAngularVel.

Parameters
obsIdThe obstacle global id
angularVelThe anglular velocity
Returns
a newly created EventType::ANGULAR_VEL event.

◆ allocBodyType()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocBodyType ( Uint64  obsId,
b2BodyType  bodyType 
)
inlinestatic

Returns a newly created EventType::BODY_TYPE event.

This method is a shortcut for creating a shared object on initBodyType.

Parameters
obsIdThe obstacle global id
bodyTypeThe obstacle body type
Returns
a newly created EventType::BODY_TYPE event.

◆ allocBoolConsts()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocBoolConsts ( Uint64  obsId,
const BoolConsts values 
)
inlinestatic

Returns a newly created EventType::BOOL_CONSTS event.

This method is a shortcut for creating a shared object on initBoolConsts.

Parameters
obsIdThe obstacle global id
valuesThe boolean constants
Returns
a newly created EventType::BOOL_CONSTS event.

◆ allocCreation()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocCreation ( Uint32  factoryId,
Uint64  obsId,
std::shared_ptr< std::vector< std::byte > >  packedParam 
)
inlinestatic

Returns a newly created EventType::CREATION event.

This method is a shortcut for creating a shared object on initCreation.

Parameters
factoryIdThe obstacle factory id
obsIdThe obstacle global id
packedParamThe packed parameters for the obstacle
Returns
a newly created EventType::CREATION event.

◆ allocDeletion()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocDeletion ( Uint64  obsId)
inlinestatic

Returns a newly created EventType::DELETION event.

This method is a shortcut for creating a shared object on initDeletion.

Parameters
obsIdThe obstacle global id
Returns
a newly created EventType::DELETION event.

◆ allocFloatConsts()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocFloatConsts ( Uint64  obsId,
const FloatConsts values 
)
inlinestatic

Returns a newly created EventType::FLOAT_CONSTS event.

This method is a shortcut for creating a shared object on initFloatConsts.

Parameters
obsIdThe obstacle global id
valuesThe boolean constants
Returns
a newly created EventType::FLOAT_CONSTS event.

◆ allocOwnerAcquire()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocOwnerAcquire ( Uint64  obsId,
Uint64  duration 
)
inlinestatic

Returns a newly created EventType::OWNER_ACQUIRE event.

This method is a shortcut for creating a shared object on initOwnerAcquire.

Parameters
obsIdThe obstacle global id
durationThe length of time to acquire the obstacle.
Returns
a newly created EventType::OWNER_ACQUIRE event.

◆ allocOwnerRelease()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocOwnerRelease ( Uint64  obsId)
inlinestatic

Returns a newly created EventType::OWNER_RELEASE event.

This method is a shortcut for creating a shared object on initOwnerRelease.

Parameters
obsIdThe obstacle global id
Returns
a newly created EventType::OWNER_RELEASE event.

◆ allocPos()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocPos ( Uint64  obsId,
Vec2  pos 
)
inlinestatic

Returns a newly created EventType::POSITION event.

This method is a shortcut for creating a shared object on initPos.

Parameters
obsIdThe obstacle global id
posThe obstacle position
Returns
a newly created EventType::POSITION event.

◆ allocVel()

static std::shared_ptr< PhysObstEvent > cugl::physics2::net::PhysObstEvent::allocVel ( Uint64  obsId,
Vec2  vel 
)
inlinestatic

Returns a newly created EventType::VELOCITY event.

This method is a shortcut for creating a shared object on initVel.

Parameters
obsIdThe obstacle global id
velThe obstacle velocity
Returns
a newly created EventType::VELOCITY event.

◆ deserialize()

void cugl::physics2::net::PhysObstEvent::deserialize ( const std::vector< std::byte > &  data)
overridevirtual

Deserializes this event from a byte vector.

This method will set the type of the event and all relevant fields.

Reimplemented from cugl::physics2::net::NetEvent.

◆ getAngle()

float cugl::physics2::net::PhysObstEvent::getAngle ( ) const
inline

Returns the angle for this physics event

The value returned is in radians

Returns
the angle for this physics event

◆ getAngularDamping()

float cugl::physics2::net::PhysObstEvent::getAngularDamping ( ) const
inline

Returns the angular damping for this physics event.

Returns
the angular damping for this physics event.

◆ getAngularVelocity()

const float cugl::physics2::net::PhysObstEvent::getAngularVelocity ( ) const
inline

Returns the angular velocity for this physics event

Returns
the angular velocity for this physics event

◆ getBodyType()

const b2BodyType cugl::physics2::net::PhysObstEvent::getBodyType ( ) const
inline

Returns the body type for this physics event

Returns
the body type for this physics event

◆ getCentroid()

const Vec2 cugl::physics2::net::PhysObstEvent::getCentroid ( ) const
inline

Returns the center of mass of this physics event.

Returns
the center of mass of this physics event.

◆ getDensity()

float cugl::physics2::net::PhysObstEvent::getDensity ( ) const
inline

Returns the density of this physics event.

The density is typically measured in usually in kg/m^2. The density can be zero or positive. You should generally use similar densities for all your fixtures. This will improve stacking stability.

Returns
the density of this physics event.

◆ getFactoryId()

Uint32 cugl::physics2::net::PhysObstEvent::getFactoryId ( ) const
inline

Returns the obstacle factory id of this event.

This only valid for EventType#CREATION events.

Returns
the obstacle factory id of this event.

◆ getFriction()

float cugl::physics2::net::PhysObstEvent::getFriction ( ) const
inline

Returns the friction coefficient of this physics event.

The friction parameter is usually set between 0 and 1, but can be any non-negative value. A friction value of 0 turns off friction and a value of 1 makes the friction strong. When the friction force is computed between two shapes, Box2D must combine the friction parameters of the two parent fixtures. This is done with the geometric mean.

Returns
the friction coefficient of this physics event.

◆ getGravityScale()

float cugl::physics2::net::PhysObstEvent::getGravityScale ( ) const
inline

Returns the gravity scale to apply to this physics event

Returns
the gravity scale to apply to this physics event

◆ getInertia()

float cugl::physics2::net::PhysObstEvent::getInertia ( ) const
inline

Returns the rotational inertia of this physics event.

Returns
the rotational inertia of this physics event.

◆ getLinearDamping()

float cugl::physics2::net::PhysObstEvent::getLinearDamping ( ) const
inline

Returns the linear damping for this physics event.

Returns
the linear damping for this physics event.

◆ getLinearVelocity()

const Vec2 cugl::physics2::net::PhysObstEvent::getLinearVelocity ( ) const
inline

Returns the linear velocity for this physics event

Returns
the linear velocity for this physics event

◆ getMass()

float cugl::physics2::net::PhysObstEvent::getMass ( ) const
inline

Returns the mass of this physics event.

Returns
the mass of this physics event.

◆ getObstacleId()

Uint64 cugl::physics2::net::PhysObstEvent::getObstacleId ( ) const
inline

Returns the obstacle global id of this event.

Returns
the obstacle global id of this event.

◆ getPackedParam()

const std::shared_ptr< std::vector< std::byte > > cugl::physics2::net::PhysObstEvent::getPackedParam ( ) const
inline

Returns the packed parameters for creating the obstacle.

This only valid for EventType#CREATION events.

Returns
the packed parameters for creating the obstacle.

◆ getPosition()

const Vec2 cugl::physics2::net::PhysObstEvent::getPosition ( ) const
inline

Returns the position for this physics event

Returns
the position for this physics event

◆ getRestitution()

float cugl::physics2::net::PhysObstEvent::getRestitution ( ) const
inline

Returns the restitution of this physics event.

Restitution is used to make objects bounce. The restitution value is usually set to be between 0 and 1. Consider dropping a ball on a table. A value of zero means the ball won't bounce. This is called an inelastic collision. A value of one means the ball's velocity will be exactly reflected. This is called a perfectly elastic collision.

Returns
the restitution of this physics event.

◆ getType()

EventType cugl::physics2::net::PhysObstEvent::getType ( ) const
inline

Returns the type of this event.

Returns
the type of this event.

◆ initAngle()

void cugl::physics2::net::PhysObstEvent::initAngle ( Uint64  obsId,
float  angle 
)
inline

Initializes an empty event to EventType#ANGLE.

This event symbolizes a change in the angle of an obstacle.

Parameters
obsIdThe obstacle global id
angleThe obstacle angle

◆ initAngularVel()

void cugl::physics2::net::PhysObstEvent::initAngularVel ( Uint64  obsId,
float  angularVel 
)
inline

Initializes an empty event to EventType#ANGULAR_VEL.

This event symbolizes a change in the anglular velocity of an obstacle.

Parameters
obsIdThe obstacle global id
angularVelThe angular velocity

◆ initBodyType()

void cugl::physics2::net::PhysObstEvent::initBodyType ( Uint64  obsId,
b2BodyType  bodyType 
)
inline

Initializes an empty event to EventType#BODY_TYPE.

This event symbolizes a change in the body type of an obstacle.

Parameters
obsIdThe obstacle global id
bodyTypeThe body type

◆ initBoolConsts()

void cugl::physics2::net::PhysObstEvent::initBoolConsts ( Uint64  obsId,
const BoolConsts values 
)
inline

Initializes an empty event to EventType#BOOL_CONSTS.

This event symbolizes a change in the boolean constants of an obstacle. Due to the relatively rarer use of these constants, they are packed into a single event.

Parameters
obsIdThe obstacle global id
valuesThe boolean constants

◆ initCreation()

void cugl::physics2::net::PhysObstEvent::initCreation ( Uint32  factoryId,
Uint64  obsId,
std::shared_ptr< std::vector< std::byte > >  packedParam 
)
inline

Initializes an empty event as EventType#CREATION.

This event symbolizes the creation of an obstacle.

Parameters
factoryIdThe obstacle factory id
obsIdThe obstacle global id
packedParamThe packed parameters for the obstacle

◆ initDeletion()

void cugl::physics2::net::PhysObstEvent::initDeletion ( Uint64  obsId)
inline

Initializes an empty event to EventType#DELETION.

This event symbolizes the deletion of an obstacle.

Parameters
obsIdThe obstacle global id

◆ initFloatConsts()

void cugl::physics2::net::PhysObstEvent::initFloatConsts ( Uint64  obsId,
const FloatConsts values 
)
inline

Initializes an empty event to EventType::FLOAT_CONSTS.

This event symbolizes a change in the additional float constants of an obstacle. Due to the relatively rarer use of these constants, they are packed into a single event.

Parameters
obsIdThe obstacle global id
valuesThe float constants

◆ initOwnerAcquire()

void cugl::physics2::net::PhysObstEvent::initOwnerAcquire ( Uint64  obsId,
Uint64  duration 
)
inline

Initializes an empty event to EventType::OWNER_ACQUIRE.

This event symbolizes a change in obstacle ownership. Setting duration to 0 will acquire ownership permanently.

Parameters
obsIdThe obstacle global id
durationThe length of time to acquire the obstacle.

◆ initOwnerRelease()

void cugl::physics2::net::PhysObstEvent::initOwnerRelease ( Uint64  obsId)
inline

Initializes an empty event to EventType::OWNER_RELEASE.

This event symbolizes a change in obstacle ownership.

Parameters
obsIdThe obstacle global id

◆ initPos()

void cugl::physics2::net::PhysObstEvent::initPos ( Uint64  obsId,
Vec2  pos 
)
inline

Initializes an empty event to EventType#POSITION.

This event symbolizes a change in the position of an obstacle.

Parameters
obsIdThe obstacle global id
posThe obstacle position

◆ initVel()

void cugl::physics2::net::PhysObstEvent::initVel ( Uint64  obsId,
Vec2  vel 
)
inline

Initializes an empty event to EventType#VELOCITY.

This event symbolizes a change in the velocity of an obstacle.

Parameters
obsIdThe obstacle global id
velThe obstacle velocity

◆ isAwake()

bool cugl::physics2::net::PhysObstEvent::isAwake ( ) const
inline

Returns true if the obstacle in this event is awake

Returns
true if the obstacle in this event is awake

◆ isBullet()

bool cugl::physics2::net::PhysObstEvent::isBullet ( ) const
inline

Returns true if the obstacle in this event is a bullet

Returns
true if the obstacle in this event is a bullet

◆ isEnabled()

bool cugl::physics2::net::PhysObstEvent::isEnabled ( ) const
inline

Returns true if the obstacle in this event is enabled

Returns
true if the obstacle in this event is enabled

◆ isFixedRotation()

bool cugl::physics2::net::PhysObstEvent::isFixedRotation ( ) const
inline

Returns true if the obstacle in this event is prevented from rotating

Returns
true if the obstacle in this event is prevented from rotating

◆ isSensor()

bool cugl::physics2::net::PhysObstEvent::isSensor ( ) const
inline

Returns true if the obstacle in this event is a sensor.

Sometimes game logic needs to know when two entities overlap yet there should be no collision response. This is done by using sensors. A sensor is an entity that detects collision but does not produce a response.

Returns
true if the obstacle in this event is a sensor.

◆ isSleepingAllowed()

bool cugl::physics2::net::PhysObstEvent::isSleepingAllowed ( ) const
inline

Returns false if the obstacle in this event should never fall asleep

Returns
false if the obstacle in this event should never fall asleep

◆ newEvent()

std::shared_ptr< NetEvent > cugl::physics2::net::PhysObstEvent::newEvent ( )
inlineoverridevirtual

Returns a newly allocated event of this type.

This method is used by the NetEventController to create a new event with this type as a reference.

Note that this method is not static, unlike the alloc method present in most of CUGL. That is because we need this factory method to be polymorphic. All custom subclasses must implement this method.

Returns
a newly allocated event of this type.

Reimplemented from cugl::physics2::net::NetEvent.

◆ serialize()

std::vector< std::byte > cugl::physics2::net::PhysObstEvent::serialize ( )
overridevirtual

Returns a byte vector serializing this event

Returns
a byte vector serializing this event

Reimplemented from cugl::physics2::net::NetEvent.

Member Data Documentation

◆ _angle

float cugl::physics2::net::PhysObstEvent::_angle
protected

The field for EventType::ANGLE

◆ _angularDamping

float cugl::physics2::net::PhysObstEvent::_angularDamping
protected

The angular damping of the obstacle in this event

◆ _angularVel

float cugl::physics2::net::PhysObstEvent::_angularVel
protected

The field for EventType::ANGULAR_VEL

◆ _bodyType

b2BodyType cugl::physics2::net::PhysObstEvent::_bodyType
protected

The field for OBJ_BODY_TYPE

◆ _centroid

Vec2 cugl::physics2::net::PhysObstEvent::_centroid
protected

The centroid of the obstacle in this event

◆ _density

float cugl::physics2::net::PhysObstEvent::_density
protected

The density of the obstacle in this event

◆ _deserializer

LWDeserializer cugl::physics2::net::PhysObstEvent::_deserializer
protected

A deserializer for unpacking data

◆ _duration

Uint64 cugl::physics2::net::PhysObstEvent::_duration
protected

The field for OBJ_OWNER_ACQUIRE

◆ _factoryId

Uint32 cugl::physics2::net::PhysObstEvent::_factoryId
protected

The obstacle factory id.

This is obtained by calling NetPhysicsController#attachFactory.

◆ _friction

float cugl::physics2::net::PhysObstEvent::_friction
protected

The friction of the obstacle in this event

◆ _gravityScale

float cugl::physics2::net::PhysObstEvent::_gravityScale
protected

The gravity scale of the obstacle in this event

◆ _inertia

float cugl::physics2::net::PhysObstEvent::_inertia
protected

The inertia of the obstacle in this event

◆ _isAwake

bool cugl::physics2::net::PhysObstEvent::_isAwake
protected

Whether the event represents an awake obstacle

◆ _isBullet

bool cugl::physics2::net::PhysObstEvent::_isBullet
protected

Whether the event represents a bullet

◆ _isEnabled

bool cugl::physics2::net::PhysObstEvent::_isEnabled
protected

Whether the event represents an enabled obstacle

◆ _isFixedRotation

bool cugl::physics2::net::PhysObstEvent::_isFixedRotation
protected

Whether the event represents an obstacle with fixed rotation

◆ _isSensor

bool cugl::physics2::net::PhysObstEvent::_isSensor
protected

Whether the event represents a sensor

◆ _isSleepingAllowed

bool cugl::physics2::net::PhysObstEvent::_isSleepingAllowed
protected

Whether the event represents a sleepable obstacle

◆ _isStatic

bool cugl::physics2::net::PhysObstEvent::_isStatic
protected

Whether the event represents a static obstacle

◆ _linearDamping

float cugl::physics2::net::PhysObstEvent::_linearDamping
protected

The linear damping of the obstacle in this event

◆ _mass

float cugl::physics2::net::PhysObstEvent::_mass
protected

The mass of the obstacle in this event

◆ _obstacleId

Uint64 cugl::physics2::net::PhysObstEvent::_obstacleId
protected

The obstacle global id.

◆ _packedParam

std::shared_ptr<std::vector<std::byte> > cugl::physics2::net::PhysObstEvent::_packedParam
protected

The packed parameter for obstacle creation.

◆ _pos

Vec2 cugl::physics2::net::PhysObstEvent::_pos
protected

The field for EventType::POSITION

◆ _restitution

float cugl::physics2::net::PhysObstEvent::_restitution
protected

The restitution of the obstacle in this event

◆ _serializer

LWSerializer cugl::physics2::net::PhysObstEvent::_serializer
protected

A serializer for packing data

◆ _type

EventType cugl::physics2::net::PhysObstEvent::_type
protected

The type of the event.

◆ _vel

Vec2 cugl::physics2::net::PhysObstEvent::_vel
protected

The field for EventType::VELOCITY


The documentation for this class was generated from the following file: