Recast  1
Game with custom magic
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | List of all members
ITemperatureWorld Class Referenceabstract

#include <ITemperatureWorld.hpp>

Inheritance diagram for ITemperatureWorld:
Inheritance graph
Collaboration diagram for ITemperatureWorld:
Collaboration graph

Public Member Functions

virtual ~ITemperatureWorld () noexcept=default
 
virtual bool has (Coord x, Coord y, Coord z) const noexcept=0
 
virtual Temperature get (Coord x, Coord y, Coord z) const =0
 
virtual void set (Coord x, Coord y, Coord z, Temperature temperature)=0
 
virtual void amplify (Coord x, Coord y, Coord z, Temperature temperature)=0
 
virtual Coord previousCoordX (Coord x) const noexcept=0
 
virtual Coord previousCoordY (Coord y) const noexcept=0
 
virtual Coord previousCoordZ (Coord z) const noexcept=0
 
virtual Coord nextCoordX (Coord x) const noexcept=0
 
virtual Coord nextCoordY (Coord y) const noexcept=0
 
virtual Coord nextCoordZ (Coord z) const noexcept=0
 

Detailed Description

Interface. Holds temperature world data.

Constructor & Destructor Documentation

virtual ITemperatureWorld::~ITemperatureWorld ( )
virtualdefaultnoexcept

Member Function Documentation

virtual void ITemperatureWorld::amplify ( Coord  x,
Coord  y,
Coord  z,
Temperature  temperature 
)
pure virtual

Adds or substracts temperature value from existing temperature value at the point.

Parameters
xX coordinate.
yY coordinate.
zZ coordinate.
temperatureTemperature difference.

Implemented in ScalableBoundTemperatureWorld, ChunkedTemperatureWorld, and BoundTemperatureWorld.

virtual Temperature ITemperatureWorld::get ( Coord  x,
Coord  y,
Coord  z 
) const
pure virtual

Returns temperature at the point.

Parameters
xX coordinate.
yY coordinate.
zZ coordinate.
Returns
Temperature at the point.

Implemented in ChunkedTemperatureWorld, and BoundTemperatureWorld.

virtual bool ITemperatureWorld::has ( Coord  x,
Coord  y,
Coord  z 
) const
pure virtualnoexcept

Tells whether temperature at the point is accessible. This method doesn't throw exceptions.

Parameters
xX coordinate.
yY coordinate.
zZ coordinate.
Returns
True if the point is accessible.

Implemented in ChunkedTemperatureWorld, and BoundTemperatureWorld.

virtual Coord ITemperatureWorld::nextCoordX ( Coord  x) const
pure virtualnoexcept
Parameters
xCurrent coordinate by x axis.
Returns
Next coordinate by x axis.

Implemented in BoundTemperatureWorld, ChunkedTemperatureWorld, and ScalableBoundTemperatureWorld.

virtual Coord ITemperatureWorld::nextCoordY ( Coord  y) const
pure virtualnoexcept
Parameters
yCurrent coordinate by y axis.
Returns
Next coordinate by y axis.

Implemented in BoundTemperatureWorld, ChunkedTemperatureWorld, and ScalableBoundTemperatureWorld.

virtual Coord ITemperatureWorld::nextCoordZ ( Coord  z) const
pure virtualnoexcept
Parameters
zCurrent coordinate by z axis.
Returns
Next coordinate by z axis.

Implemented in BoundTemperatureWorld, ChunkedTemperatureWorld, and ScalableBoundTemperatureWorld.

virtual Coord ITemperatureWorld::previousCoordX ( Coord  x) const
pure virtualnoexcept
Parameters
xCurrent coordinate by x axis.
Returns
Previous coordinate by x axis.

Implemented in BoundTemperatureWorld, ChunkedTemperatureWorld, and ScalableBoundTemperatureWorld.

virtual Coord ITemperatureWorld::previousCoordY ( Coord  y) const
pure virtualnoexcept
Parameters
yCurrent coordinate by y axis.
Returns
Previous coordinate by y axis.

Implemented in BoundTemperatureWorld, ChunkedTemperatureWorld, and ScalableBoundTemperatureWorld.

virtual Coord ITemperatureWorld::previousCoordZ ( Coord  z) const
pure virtualnoexcept
Parameters
zCurrent coordinate by z axis.
Returns
Previous coordinate by z axis.

Implemented in BoundTemperatureWorld, ChunkedTemperatureWorld, and ScalableBoundTemperatureWorld.

virtual void ITemperatureWorld::set ( Coord  x,
Coord  y,
Coord  z,
Temperature  temperature 
)
pure virtual

Sets temperature at the point.

Parameters
xX coordinate.
yY coordinate.
zZ coordinate.
temperatureTemperature to set.

Implemented in ScalableBoundTemperatureWorld, ChunkedTemperatureWorld, and BoundTemperatureWorld.


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