BaseSoftwareNodeBuilder

onera.pmlanalyzer.pml.model.software.BaseSoftwareNodeBuilder

Base trait for all hardware node builder the name of the transporter is implicitly derived from the name of the variable used during instantiation. Usually an hardware can be constructed without arguments, where T can be Application, Data

        val mySoftware = T()

It is also possible to give a specific name, for instance when creating the component in a loop then the following constructor can bee used

          val softwareSeq = for { i <- O to N } yield T(s"mySoftware$i")

Attributes

T

the concrete type of built object

See also:
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Application.type

Members list

Concise view

embedFunctions

def all(implicit owner: Owner): Set[T]

Provide all the object of the current type created for the platform, including the ones created in composite components

Provide all the object of the current type created for the platform, including the ones created in composite components

Attributes

owner

the name of the platform owning the objects

Returns:

set of created objects

Inherited from:
PMLNodeBuilder
def allDirect(implicit owner: Owner): Set[T]

Provide all the object of the current type created for the platform, without the ones created in composite components

Provide all the object of the current type created for the platform, without the ones created in composite components

Attributes

owner

the name of the platform owning the objects

Returns:

set of created objects

Inherited from:
PMLNodeBuilder

Value members

Abstract methods

protected def builder(name: Symbol): T

The builder that must be implemented by specific builder

The builder that must be implemented by specific builder

Attributes

name

the name of the object

Returns:

the object

Concrete methods

def apply(name: Symbol)(implicit owner: Owner): T

A software component can be defined only its name

A software component can be defined only its name

Attributes

name

the software name

owner

implicitly retrieved name of the platform

Returns:

the software

def apply()(implicit name: Name, owner: Owner): T

A software component can be defined by the name provided by the implicit declaration context (the name of the value enclosing the object)

A software component can be defined by the name provided by the implicit declaration context (the name of the value enclosing the object)

Attributes

name

the implicit software name

owner

implicitly retrieved name of the platform

Returns:

the software

Inherited fields

protected val _memo: HashMap[(Symbol, Symbol), T]

Attributes

Inherited from:
PMLNodeBuilder