Packages

  • package root
    Definition Classes
    root
  • package se
    Definition Classes
    root
  • package sics
    Definition Classes
    se
  • package kompics
    Definition Classes
    sics
  • package sl

    This package contains the Scala DSL for Kompics.

    This package contains the Scala DSL for Kompics.

    It is recommended to import this as import se.sics.kompics.sl._, since it contains a number of implicit conversions and convenience methods that are good to have in scope.

    Definition Classes
    kompics
  • package simulator

    The Kompics Simulator DSL for Scala

    The Kompics Simulator DSL for Scala

    Definition Classes
    sl
    Example:
    1. case object SimpleSimulation {
      
        import Distributions._
        // needed for the distributions, but needs to be initialised after setting the seed
        implicit val random = JSimulationScenario.getRandom();
      
        private def intToAddress(i: Int): Address = {
          try {
            new TAddress(new InetSocketAddress(InetAddress.getByName("192.193.0." + i), 10000));
          } catch {
            case ex: UnknownHostException => throw new RuntimeException(ex);
          }
        }
      
        val startResultSetterOp = Op { (self: Integer) =>
          val selfAddr = intToAddress(self);
          StartNode(selfAddr, Init[ResultSetter](selfAddr))
        };
        val startPongerOp = Op { (self: Integer) =>
          val selfAddr = intToAddress(self)
          StartNode(selfAddr, Init[PongerParent](selfAddr))
        };
        val startPingerOp = Op { (self: Integer, ponger: Integer) =>
          val selfAddr = intToAddress(self);
          val pongerAddr = intToAddress(ponger);
          StartNode(selfAddr, Init[PingerParent](selfAddr, pongerAddr))
        };
      
        val scenario = raise(5, startPongerOp, 1.toN)
          .arrival(constant(1000.millis))
          .andThen(1000.millis)
          .afterTermination(raise(5, startPingerOp, 6.toN, 1.toN).arrival(constant(1000.millis)))
          .inParallel(raise(1, startResultSetterOp, 1.toN).arrival(constant(1000.millis)))
          .andThen(10000.millis)
          .afterTermination(Terminate);
      }
  • ChangeNetwork
  • Distributions
  • IntDistributions
  • KillNode
  • Op
  • Setup
  • SimulationResult
  • StartNode
  • StochasticProcess
  • StochasticProcessBuilder
  • StochasticProcessChain
  • Terminate
c

se.sics.kompics.sl.simulator

StochasticProcessChain

class StochasticProcessChain extends Serializable

A simulation is formed by a chain of stochastic processes

It should end with a Terminate process.

See also

se.sics.kompics.sl.simulator for an example

Linear Supertypes
Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. StochasticProcessChain
  2. Serializable
  3. AnyRef
  4. Any
Implicitly
  1. by chainToScenario
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new StochasticProcessChain()

Type Members

  1. case class AfterStart(time: Long) extends Connector with Product with Serializable

    A link that activates some time after the start of a process

  2. case class AfterTermination(time: Long) extends Connector with Product with Serializable

    A link that activates some time after a process has terminated

  3. case class AtTime(time: Long) extends Connector with Product with Serializable

    A link that activates at a particular time in the simulation

  4. sealed trait Connector extends AnyRef

    Linking objects in the process chain DSL

  5. case class TimeLink(time: Duration) extends Product with Serializable

    A DSL object that indicates that a time connector is expected next

    A DSL object that indicates that a time connector is expected next

    time

    the time passed to the time connector

  6. case class TimeLink2(time: Duration) extends Product with Serializable

    A DSL object that indicates that a concrete time connector is expected next

    A DSL object that indicates that a concrete time connector is expected next

    time

    the time passed to the time connector

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toany2stringadd[StochasticProcessChain] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (StochasticProcessChain, B)
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toArrowAssoc[StochasticProcessChain] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def andThen(time: Duration): TimeLink

    Link the next process by time

    Link the next process by time

    time

    the time value to use for the link

    returns

    a DSL object to indicate how interpret the time

  7. def andThenAt(time: Duration): TimeLink2

    Link the next process at a time time

    Link the next process at a time time

    time

    the time value to use for the link

    returns

    a DSL object to indicate how interpret the time

  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  10. def ensuring(cond: (StochasticProcessChain) => Boolean, msg: => Any): StochasticProcessChain
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toEnsuring[StochasticProcessChain] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: (StochasticProcessChain) => Boolean): StochasticProcessChain
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toEnsuring[StochasticProcessChain] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean, msg: => Any): StochasticProcessChain
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toEnsuring[StochasticProcessChain] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean): StochasticProcessChain
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toEnsuring[StochasticProcessChain] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  16. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toStringFormat[StochasticProcessChain] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  17. final def generateEventList(): LinkedList[StochasticSimulatorEvent]
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toSimulationScenario performed by method chainToScenario in se.sics.kompics.sl.simulator.
    Definition Classes
    SimulationScenario
  18. def get(): SimulationScenario

    Produce an actual SimulationScenario from the process chain

    Produce an actual SimulationScenario from the process chain

    Converts the Scala DSL process chain into a Kompics Java SimulationScenario for execution.

    Scenarios can be executed by calling simulate on them.

    returns

    the new scenario

  19. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  20. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  21. def inParallel(parallelProcs: StochasticProcess*): StochasticProcessChain

    Execute multiple processes in parallel

    Execute multiple processes in parallel

    parallelProcs

    the processes to eexecute

    returns

    the process chain itself

  22. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  23. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  25. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  26. final def simulate(arg0: Class[_ <: kompics.ComponentDefinition], arg1: Translator): Unit
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toSimulationScenario performed by method chainToScenario in se.sics.kompics.sl.simulator.
    Definition Classes
    SimulationScenario
  27. final def simulate(arg0: Class[_ <: kompics.ComponentDefinition], arg1: Boolean): Unit
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toSimulationScenario performed by method chainToScenario in se.sics.kompics.sl.simulator.
    Definition Classes
    SimulationScenario
  28. final def simulate(arg0: Class[_ <: kompics.ComponentDefinition]): Unit
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toSimulationScenario performed by method chainToScenario in se.sics.kompics.sl.simulator.
    Definition Classes
    SimulationScenario
  29. def startWith(sp: StochasticProcess): StochasticProcessChain

    The first process in the chain

    The first process in the chain

    sp

    the process that comes first in the chain

    returns

    the process chain itself

  30. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  31. def toString(): String
    Definition Classes
    AnyRef → Any
  32. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  33. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  34. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  35. object InParallel extends Connector with Product with Serializable

    A link that activates multiple processes in parallel

  36. object Start extends Connector with Product with Serializable

    The beginning of a chain

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  2. def [B](y: B): (StochasticProcessChain, B)
    Implicit
    This member is added by an implicit conversion from StochasticProcessChain toArrowAssoc[StochasticProcessChain] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion chainToScenario fromStochasticProcessChain to SimulationScenario

Inherited by implicit conversion any2stringadd fromStochasticProcessChain to any2stringadd[StochasticProcessChain]

Inherited by implicit conversion StringFormat fromStochasticProcessChain to StringFormat[StochasticProcessChain]

Inherited by implicit conversion Ensuring fromStochasticProcessChain to Ensuring[StochasticProcessChain]

Inherited by implicit conversion ArrowAssoc fromStochasticProcessChain to ArrowAssoc[StochasticProcessChain]

Ungrouped