Class/Object

treadle.executable

DataStore

Related Docs: object DataStore | package executable

Permalink

class DataStore extends HasDataArrays

Creates a data store for the three underlying data types. The numberOfBuffers is used to control the ability to rollback execution. The meaning of the values of each slot must be maintained outside of this class. This class only supports (2 ** 31) - 1 of any ints, longs or bigs.

Source
DataStore.scala
Linear Supertypes
HasDataArrays, AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DataStore
  2. HasDataArrays
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DataStore(numberOfBuffers: Int, dataStoreAllocator: DataStoreAllocator)

    Permalink

    numberOfBuffers

    Number of buffers

Type Members

  1. case class AssignBig(symbol: Symbol, expression: FuncBig, info: Info) extends Assigner with Product with Serializable

    Permalink
  2. case class AssignBigIndirect(symbol: Symbol, memorySymbol: Symbol, getMemoryIndex: FuncInt, enable: FuncInt, expression: FuncBig, info: Info) extends Assigner with Product with Serializable

    Permalink
  3. case class AssignInt(symbol: Symbol, expression: FuncInt, info: Info) extends Assigner with Product with Serializable

    Permalink
  4. case class AssignIntIndirect(symbol: Symbol, memorySymbol: Symbol, getMemoryIndex: FuncInt, enable: FuncInt, expression: FuncInt, info: Info) extends Assigner with Product with Serializable

    Permalink
  5. case class AssignLong(symbol: Symbol, expression: FuncLong, info: Info) extends Assigner with Product with Serializable

    Permalink
  6. case class AssignLongIndirect(symbol: Symbol, memorySymbol: Symbol, getMemoryIndex: FuncInt, enable: FuncInt, expression: FuncLong, info: Info) extends Assigner with Product with Serializable

    Permalink
  7. case class BlackBoxShim(unexpandedName: String, outputName: Symbol, inputs: Seq[Symbol], implementation: ScalaBlackBox) extends BigExpressionResult with Product with Serializable

    Permalink
  8. case class ExternalModuleInputAssigner(symbol: Symbol, portName: String, blackBox: ScalaBlackBox, underlyingAssigner: Assigner) extends Assigner with Product with Serializable

    Permalink
  9. case class GetBig(index: Int) extends BigExpressionResult with Product with Serializable

    Permalink
  10. case class GetBigIndirect(memorySymbol: Symbol, getMemoryIndex: FuncInt, enable: FuncInt) extends BigExpressionResult with Product with Serializable

    Permalink
  11. case class GetInt(index: Int) extends IntExpressionResult with Product with Serializable

    Permalink
  12. case class GetIntIndirect(memorySymbol: Symbol, getMemoryIndex: FuncInt, enable: FuncInt) extends IntExpressionResult with Product with Serializable

    Permalink

    for memory implementations

  13. case class GetLong(index: Int) extends LongExpressionResult with Product with Serializable

    Permalink
  14. case class GetLongIndirect(memorySymbol: Symbol, getMemoryIndex: FuncInt, enable: FuncInt) extends LongExpressionResult with Product with Serializable

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val activePlugins: ArrayBuffer[DataStorePlugin]

    Permalink
  5. def addPlugin(name: String, plugin: DataStorePlugin, enable: Boolean): Unit

    Permalink
  6. def apply(symbol: Symbol, offset: Int): Big

    Permalink
  7. def apply(symbol: Symbol): Big

    Permalink
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. val bigData: Array[Big]

    Permalink
    Definition Classes
    DataStoreHasDataArrays
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def deserialize(jsonString: String): Unit

    Permalink
  12. def disablePlugin(name: String): Unit

    Permalink
  13. def enablePlugin(name: String): Unit

    Permalink
  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  16. var executionEngineOption: Option[ExecutionEngine]

    Permalink
  17. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  19. def getRegisterLastValueIndex(symbol: Symbol): Int

    Permalink
  20. def getValueAtIndex(dataSize: DataSize, index: Int): BigInt

    Permalink
    Definition Classes
    HasDataArrays
  21. def getWaveformValues(symbols: Array[Symbol], startCycle: Int = 0, endCycle: Int = 1): WaveformValues

    Permalink
  22. def hasEnabledPlugins: Boolean

    Permalink
  23. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  24. val intData: Array[Int]

    Permalink
    Definition Classes
    DataStoreHasDataArrays
  25. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  26. var leanMode: Boolean

    Permalink
  27. val longData: Array[Long]

    Permalink
    Definition Classes
    DataStoreHasDataArrays
  28. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  30. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  31. def numberOfBigs: Int

    Permalink
  32. val numberOfBuffers: Int

    Permalink

    Number of buffers

  33. def numberOfInts: Int

    Permalink
  34. def numberOfLongs: Int

    Permalink
  35. val plugins: HashMap[String, DataStorePlugin]

    Permalink
  36. def removePlugin(name: String): Unit

    Permalink
  37. def renderAssignment(symbol: Symbol): Unit

    Permalink
  38. val rollBackBufferManager: RollBackBufferManager

    Permalink
  39. def runPlugins(symbol: Symbol, offset: Int = 1, previousValue: BigInt): Unit

    Permalink
  40. def saveData(time: Long): Unit

    Permalink
  41. def serialize: String

    Permalink
  42. def setAssignmentDisplayModes(): Unit

    Permalink
  43. def setExecutionEngine(executionEngine: ExecutionEngine): Unit

    Permalink
  44. def setValueAtIndex(dataSize: DataSize, index: Int, value: Big): Unit

    Permalink
    Definition Classes
    HasDataArrays
  45. def showAssignment(symbol: Symbol): Unit

    Permalink
  46. def showIndirectAssignment(symbol: Symbol, value: BigInt, index: Int): Unit

    Permalink
  47. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  48. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  49. def update(symbol: Symbol, offset: Int, value: Big): Unit

    Permalink
  50. def update(symbol: Symbol, value: Big): Unit

    Permalink
  51. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  52. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  53. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  54. val watchList: HashSet[Symbol]

    Permalink

Deprecated Value Members

  1. def saveData(clockName: String, time: Long): Unit

    Permalink
    Annotations
    @deprecated
    Deprecated

    (Since version since 1.0) Use saveData(time: Long), clock based rollback buffers are no longer supported

Inherited from HasDataArrays

Inherited from AnyRef

Inherited from Any

Ungrouped