abstract class Component extends NameableByComponent with ContextUser with ScalaLocated with PostInitCallback with Stackable with OwnableRef with SpinalTagReady with OverridedEqualsHashCode with ValCallbackRec
Abstract class used to create a new Component
class MyAndGate extends Component { val io = new Bundle{ val a,b = in Bool() val res = out Bool() } io.res := io.a & io.b }
- See also
- Alphabetic
- By Inheritance
- Component
- ValCallbackRec
- ValCallback
- OverridedEqualsHashCode
- SpinalTagReady
- Stackable
- PostInitCallback
- NameableByComponent
- Nameable
- ContextUser
- ScalaLocated
- GlobalDataUser
- OwnableRef
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Component()
Type Members
- case class PrePopTask(task: () => Unit, clockDomain: Handle[ClockDomain]) extends Product with Serializable
Class used to create a task that must be executed after the creation of the component
- abstract type RefOwnerType
- Definition Classes
- OwnableRef
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val _spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- def addAttribute(attribute: Attribute): Component.this.type
- Definition Classes
- Component → SpinalTagReady
- def addAttribute(name: String, value: Int): Component.this.type
- Definition Classes
- SpinalTagReady
- def addAttribute(name: String, value: String): Component.this.type
- Definition Classes
- SpinalTagReady
- def addAttribute(name: String): Component.this.type
- Definition Classes
- SpinalTagReady
- def addPrePopTask(task: () => Unit): ArrayBuffer[PrePopTask]
Add a new prePopTask
- def addTag[T <: SpinalTag](spinalTag: T): Component.this.type
- Definition Classes
- SpinalTagReady
- def addTags[T <: SpinalTag](tags: Iterable[T]): Component.this.type
- Definition Classes
- SpinalTagReady
- def afterElaboration(body: => Unit): ArrayBuffer[PrePopTask]
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val children: ArrayBuffer[Component]
Contains an array of all children Component
- val clockDomain: Handle[ClockDomain]
Get the current clock domain (null if there is no clock domain already set )
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def component: Component
- Definition Classes
- ContextUser
- val definition: SpinalTagReady
- var definitionName: String
Definition Name (name of the entity (VHDL) or module (Verilog))
- val dslBody: ScopeStatement
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(obj: Any): Boolean
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- def existsTag(cond: (SpinalTag) => Boolean): Boolean
- Definition Classes
- SpinalTagReady
- def filterTag(cond: (SpinalTag) => Boolean): Iterable[SpinalTag]
- Definition Classes
- SpinalTagReady
- def findTag(cond: (SpinalTag) => Boolean): Option[SpinalTag]
- Definition Classes
- SpinalTagReady
- def foreachReflectableNameables(doThat: (Any) => Unit): Unit
- Definition Classes
- Nameable
- def foreachTag(body: (SpinalTag) => Unit): Unit
- Definition Classes
- SpinalTagReady
- def getAllIo: Set[BaseType]
Get a set of all IO available in the component
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def getDisplayName(): String
- def getGroupedIO(ioBundleBypass: Boolean): Seq[Data]
- def getInstanceCounter: Int
- Definition Classes
- ContextUser
- def getMode: Byte
- Attributes
- protected
- Definition Classes
- Nameable
- def getName(default: String): String
- Definition Classes
- NameableByComponent → Nameable
- def getName(): String
- Definition Classes
- NameableByComponent → Nameable
- def getOrdredNodeIo: List[BaseType]
Sort all IO regarding instanceCounter
- def getParentsPath(sep: String = "/"): String
Return the path of the parent
Return the path of the parent
toplevel/[myComponent1] // Current component is myComponent2
Example: - def getPartialName(): String
- Definition Classes
- Nameable
- def getPath(sep: String = "/"): String
Return the path of the component
Return the path of the component
toplevel/[myComponent1]/[myComponent2] // Current component is myComponent2
Example: - def getRefOwnersChain(): List[Any]
- Definition Classes
- OwnableRef
- def getScalaLocationLong: String
- Definition Classes
- ScalaLocated
- def getScalaLocationShort: String
- Definition Classes
- ScalaLocated
- def getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
- def getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
- Definition Classes
- SpinalTagReady
- def getTags(): LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- val globalData: GlobalData
- Definition Classes
- GlobalDataUser
- def hasTag[T <: SpinalTag](clazz: Class[T]): Boolean
- Definition Classes
- SpinalTagReady
- def hasTag(spinalTag: SpinalTag): Boolean
- Definition Classes
- SpinalTagReady
- def hashCode(): Int
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- def instanceAttributes(language: Language): Iterable[Attribute]
- Definition Classes
- SpinalTagReady
- def instanceAttributes: Iterable[Attribute]
- Definition Classes
- SpinalTagReady
- def isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
- def isEmptyOfTag: Boolean
- Definition Classes
- SpinalTagReady
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isLogicLess: Boolean
- def isNamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
- def isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
- def isUnnamed: Boolean
- Definition Classes
- Nameable
- var localNamingScope: NamingScope
Name allocation
- val name: String
- Attributes
- protected
- Definition Classes
- Nameable
- val nameableRef: Nameable
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def noIoPrefix(): Component.this.type
No "io_" prefix in front of the in/out signals
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def onBody[T](body: => T): T
- def onEachAttributes(doIt: (Attribute) => Unit): Unit
- Definition Classes
- SpinalTagReady
- def overrideLocalName(name: String): Component.this.type
- Definition Classes
- Nameable
- def parent: Component
Get the parent component (null if there is no parent)
- val parentScope: ScopeStatement
- Definition Classes
- ContextUser
- def parents(of: Component = this, list: List[Component] = Nil): List[Component]
Return a list of all parents of the components
- def postInitCallback(): Component.this.type
- Definition Classes
- Component → PostInitCallback
- def postPopEvent(): Unit
- Definition Classes
- Stackable
- def postPushEvent(): Unit
- def prePop(): Unit
- def prePopEvent(): Unit
- def propagateIo[T <: Data](childIo: T): T
- var pulledDataCache: Map[Data, Data]
Reference owner type
- val refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
- def reflectBaseType(name: String): BaseType
- def reflectNames(): Unit
- Definition Classes
- Nameable
- def removeTag(spinalTag: SpinalTag): Component.this.type
- Definition Classes
- SpinalTagReady
- def removeTags(tags: Iterable[SpinalTag]): Component.this.type
- Definition Classes
- SpinalTagReady
- def rework[T](gen: => T): T
- val scopeProperties: LinkedHashMap[ScopeProperty[Any], Any]
Rework the component
- def setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): Component.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): Component.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, postfix: String): Component.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, namePriority: Byte): Component.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, weak: Boolean): Component.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable): Component.this.type
- Definition Classes
- Nameable
- def setDefinitionName(name: String): Component.this.type
Set the definition name of the component
- def setName(name: String, namePriority: Byte): Component.this.type
- Definition Classes
- Nameable
- def setName(name: String, weak: Boolean): Component.this.type
- Definition Classes
- Nameable
- def setName(name: String): Component.this.type
- Definition Classes
- Nameable
- def setNameAsWeak(): Component.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, namePriority: Byte): Component.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, weak: Boolean): Component.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String, namePriority: Byte): Component.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String, weak: Boolean): Component.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String): Component.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String): Component.this.type
- Definition Classes
- Nameable
- def setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
- def setScalaLocated(source: ScalaLocated): Component.this.type
- Definition Classes
- ScalaLocated
- def setWeakName(name: String): Component.this.type
- Definition Classes
- Nameable
- def spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- Nameable → AnyRef → Any
- def unsetName(): Component.this.type
- Definition Classes
- Nameable
- val userCache: Map[AnyRef, Map[AnyRef, AnyRef]]
Used to store arbitrary object related to the component
- def valCallback[T](ref: T, name: String): T
- Definition Classes
- ValCallbackRec → ValCallback
- def valCallbackOn(ref: Any, name: String, refs: Set[Any]): Unit
- Definition Classes
- ValCallbackRec
- def valCallbackRec(ref: Any, name: String): Unit
- Definition Classes
- Component → ValCallbackRec
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def walkComponents(body: (Component) => Unit): Unit
- def withKeywords(): Unit
- def withoutKeywords(): Unit
- var withoutReservedKeywords: Boolean
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated