io.github.srs.model.entity.dynamicentity.action

Members list

Type members

Classlikes

trait Action[F[_]]

Action trait represents an action that can be performed on a dynamic entity.

Action trait represents an action that can be performed on a dynamic entity.

Type parameters

F

the effect type of the action.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class MovementAction[F]
class NoAction[F]
class SequenceAction[F]
trait ActionAlg[F[_], E <: DynamicEntity]

ActionAlg trait defines the actions that can be performed on a dynamic entity.

ActionAlg trait defines the actions that can be performed on a dynamic entity.

It represents the algebra of actions that can be executed on a dynamic entity, such as, for example, moving the wheels.

Type parameters

E

the type of dynamic entity on which the action is performed, extending DynamicEntity.

F

the effect type of the action.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
final case class MovementAction[F[_]] extends Action[F]

MovementAction represents a dynamic-entity movement action characterized by the speeds applied to the left and right wheels.

MovementAction represents a dynamic-entity movement action characterized by the speeds applied to the left and right wheels.

Type parameters

E

the type of dynamic entity on which the action is performed, extending DynamicEntity.

F

the effect type of the action.

Value parameters

leftSpeed

the speed to apply to the left wheel.

rightSpeed

the speed to apply to the right wheel.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Action[F]
class Object
trait Matchable
class Any
Show all

Factory object for creating movement actions for dynamic entities. Provides methods to create custom movement actions with specified speeds for the left and right wheels, as well as predefined actions for moving forward, backward, turning left, turning right, and stopping.

Factory object for creating movement actions for dynamic entities. Provides methods to create custom movement actions with specified speeds for the left and right wheels, as well as predefined actions for moving forward, backward, turning left, turning right, and stopping.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final case class NoAction[F[_]]()(using evidence$1: Monad[F]) extends Action[F]

NoAction represents an action that does nothing on the dynamic entity.

NoAction represents an action that does nothing on the dynamic entity.

Type parameters

F

the effect type of the action.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Action[F]
class Object
trait Matchable
class Any
Show all
final case class SequenceAction[F[_]](actions: List[Action[F]])(using evidence$1: Monad[F]) extends Action[F]

SequenceAction represents a composite action that executes a sequence of actions in order.

SequenceAction represents a composite action that executes a sequence of actions in order.

Type parameters

E

the type of dynamic entity on which the action will be executed, extending DynamicEntity.

F

the effect type of the action.

Value parameters

actions

the list of actions to be executed in sequence.

monad$F$0

the implicit Monad instance for the effect type F.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait Action[F]
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type