FireSTARR
Loading...
Searching...
No Matches
fs::sim::Event Class Reference

A specific Event scheduled in a specific Scenario. More...

#include <Event.h>

Collaboration diagram for fs::sim::Event:

Public Types

enum  Type { SAVE , END_SIMULATION , NEW_FIRE , FIRE_SPREAD }
 Type of Event.
 

Public Member Functions

 Event (Event &&rhs) noexcept=default
 Move constructor.
 
 Event (const Event &rhs)=delete
 Copy constructor.
 
Eventoperator= (Event &&rhs) noexcept=default
 Move assignment.
 
Eventoperator= (const Event &rhs)=delete
 Copy assignment.
 
constexpr DurationSize time () const
 Time of Event (decimal days)
 
constexpr Type type () const
 Type of Event.
 
constexpr DurationSize timeAtLocation () const
 Duration that Event Cell has been burning (decimal days)
 
constexpr const Cellcell () const
 Cell Event takes place in.
 

Static Public Member Functions

static Event makeEvent (const DurationSize time, const Cell &cell, const Type type)
 
static Event makeEnd (const DurationSize time)
 Make simulation end event.
 
static Event makeNewFire (const DurationSize time, const Cell &cell)
 Make new fire event.
 
static Event makeSave (const DurationSize time)
 Make simulation save event.
 
static Event makeFireSpread (const DurationSize time)
 Make fire spread event.
 
static Event makeFireSpread (const DurationSize time, const Cell &cell)
 Make fire spread event.
 

Static Public Attributes

static constexpr Cell NoLocation {}
 Cell representing no location.
 

Private Member Functions

constexpr Event (const DurationSize time, const Cell &cell, const Type type, const DurationSize time_at_location)
 Constructor.
 

Private Attributes

DurationSize time_
 Time to schedule for.
 
DurationSize time_at_location_
 Duration that Event Cell has been burning (decimal days)
 
Cell cell_
 Cell to spread in.
 
Type type_
 Type of Event.
 

Detailed Description

A specific Event scheduled in a specific Scenario.

Constructor & Destructor Documentation

◆ Event() [1/3]

fs::sim::Event::Event ( Event && rhs)
defaultnoexcept

Move constructor.

Parameters
rhsEvent to move from

◆ Event() [2/3]

fs::sim::Event::Event ( const Event & rhs)
delete

Copy constructor.

Parameters
rhsEvent to copy from

◆ Event() [3/3]

fs::sim::Event::Event ( const DurationSize time,
const Cell & cell,
const Type type,
const DurationSize time_at_location )
inlineconstexprprivate

Constructor.

Parameters
timeTime to schedule for
cellCellIndex for relative Cell that spread into from
sourceSource that Event is coming from
typeType of Event
intensityIntensity to spread with (kW/m)
time_at_locationDuration that Event Cell has been burning (decimal days)

Member Function Documentation

◆ cell()

const Cell & fs::sim::Event::cell ( ) const
inlinenodiscardconstexpr

Cell Event takes place in.

Returns
Cell Event takes place in
Here is the caller graph for this function:

◆ makeEnd()

static Event fs::sim::Event::makeEnd ( const DurationSize time)
inlinestaticnodiscard

Make simulation end event.

Parameters
timeTime to schedule for
Returns
Event created
Here is the caller graph for this function:

◆ makeFireSpread() [1/2]

static Event fs::sim::Event::makeFireSpread ( const DurationSize time)
inlinestaticnodiscard

Make fire spread event.

Parameters
timeTime to schedule for
Returns
Event created
Here is the caller graph for this function:

◆ makeFireSpread() [2/2]

static Event fs::sim::Event::makeFireSpread ( const DurationSize time,
const Cell & cell )
inlinestaticnodiscard

Make fire spread event.

Parameters
timeTime to schedule for
intensityIntensity to spread with (kW/m)
cellCell to spread in
Returns
Event created
Here is the call graph for this function:

◆ makeNewFire()

static Event fs::sim::Event::makeNewFire ( const DurationSize time,
const Cell & cell )
inlinestaticnodiscard

Make new fire event.

Parameters
timeTime to schedule for
cellCell to start new fire in
Returns
Event created
Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeSave()

static Event fs::sim::Event::makeSave ( const DurationSize time)
inlinestaticnodiscard

Make simulation save event.

Parameters
timeTime to schedule for
Returns
Event created
Here is the caller graph for this function:

◆ operator=() [1/2]

Event & fs::sim::Event::operator= ( const Event & rhs)
delete

Copy assignment.

Parameters
rhsEvent to copy from
Returns
This, after assignment

◆ operator=() [2/2]

Event & fs::sim::Event::operator= ( Event && rhs)
defaultnoexcept

Move assignment.

Parameters
rhsEvent to move from
Returns
This, after assignment

◆ time()

DurationSize fs::sim::Event::time ( ) const
inlinenodiscardconstexpr

Time of Event (decimal days)

Returns
Time of Event (decimal days)
Here is the caller graph for this function:

◆ timeAtLocation()

DurationSize fs::sim::Event::timeAtLocation ( ) const
inlinenodiscardconstexpr

Duration that Event Cell has been burning (decimal days)

Returns
Duration that Event Cell has been burning (decimal days)
Here is the caller graph for this function:

◆ type()

Type fs::sim::Event::type ( ) const
inlinenodiscardconstexpr

Type of Event.

Returns
Type of Event
Here is the caller graph for this function:

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