zuspec-arl-dm 0.1.0.15264414400rc0__cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. zsp_arl_dm/__build_num__.py +1 -0
  2. zsp_arl_dm/__init__.py +22 -0
  3. zsp_arl_dm/__version__.py +3 -0
  4. zsp_arl_dm/core.cpython-39-x86_64-linux-gnu.so +0 -0
  5. zsp_arl_dm/core.pxd +395 -0
  6. zsp_arl_dm/decl.pxd +317 -0
  7. zsp_arl_dm/libzsp-arl-dm.so +0 -0
  8. zsp_arl_dm/pkginfo.py +23 -0
  9. zsp_arl_dm/py_val_to_val_ref.py +46 -0
  10. zsp_arl_dm/share/include/TypeFieldAddrClaim.cpp +39 -0
  11. zsp_arl_dm/share/include/TypeFieldAddrClaim.h +41 -0
  12. zsp_arl_dm/share/include/zsp/arl/dm/FactoryExt.h +6 -0
  13. zsp_arl_dm/share/include/zsp/arl/dm/IAccept.h +28 -0
  14. zsp_arl_dm/share/include/zsp/arl/dm/IArl.h +30 -0
  15. zsp_arl_dm/share/include/zsp/arl/dm/IComponentMap.h +41 -0
  16. zsp_arl_dm/share/include/zsp/arl/dm/IContext.h +443 -0
  17. zsp_arl_dm/share/include/zsp/arl/dm/IContextDumper.h +47 -0
  18. zsp_arl_dm/share/include/zsp/arl/dm/IContextLoader.h +40 -0
  19. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeAction.h +43 -0
  20. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivity.h +37 -0
  21. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivityBind.h +45 -0
  22. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivityParallel.h +17 -0
  23. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivityReplicate.h +45 -0
  24. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivitySchedule.h +25 -0
  25. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivityScope.h +46 -0
  26. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivitySequence.h +26 -0
  27. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivityTraverse.h +33 -0
  28. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeActivityTraverseType.h +32 -0
  29. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeAddrClaim.h +42 -0
  30. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeAddrClaimTransparent.h +42 -0
  31. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeAddrHandle.h +44 -0
  32. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeAddrSpaceC.h +46 -0
  33. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeAddrSpaceTransparentC.h +41 -0
  34. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeArlStruct.h +51 -0
  35. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeComponent.h +40 -0
  36. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeCoreLibComponent.h +44 -0
  37. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeFlowObj.h +36 -0
  38. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeFunction.h +115 -0
  39. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeFunctionImport.h +45 -0
  40. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeFunctionParamDecl.h +53 -0
  41. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypePackedStruct.h +48 -0
  42. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypePureComponent.h +41 -0
  43. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypePyObj.h +41 -0
  44. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeReg.h +55 -0
  45. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeRegGroup.h +40 -0
  46. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeResource.h +22 -0
  47. zsp_arl_dm/share/include/zsp/arl/dm/IDataTypeTransparentAddrSpace.h +44 -0
  48. zsp_arl_dm/share/include/zsp/arl/dm/IFactory.h +64 -0
  49. zsp_arl_dm/share/include/zsp/arl/dm/IMarker.h +56 -0
  50. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivity.h +39 -0
  51. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivityBind.h +46 -0
  52. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivityParallel.h +41 -0
  53. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivityReplicate.h +49 -0
  54. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivitySchedule.h +30 -0
  55. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivityScope.h +52 -0
  56. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivitySequence.h +28 -0
  57. zsp_arl_dm/share/include/zsp/arl/dm/IModelActivityTraverse.h +53 -0
  58. zsp_arl_dm/share/include/zsp/arl/dm/IModelBuildContext.h +36 -0
  59. zsp_arl_dm/share/include/zsp/arl/dm/IModelComponentTreeData.h +92 -0
  60. zsp_arl_dm/share/include/zsp/arl/dm/IModelEvalIterator.h +72 -0
  61. zsp_arl_dm/share/include/zsp/arl/dm/IModelEvalIteratorListener.h +62 -0
  62. zsp_arl_dm/share/include/zsp/arl/dm/IModelEvaluator.h +41 -0
  63. zsp_arl_dm/share/include/zsp/arl/dm/IModelExec.h +40 -0
  64. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldAction.h +34 -0
  65. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldClaim.h +43 -0
  66. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldComponent.h +32 -0
  67. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldComponentRoot.h +51 -0
  68. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldExecutor.h +41 -0
  69. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldExecutorClaim.h +42 -0
  70. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldExecutorGroup.h +50 -0
  71. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldInOut.h +44 -0
  72. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldPool.h +38 -0
  73. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldRegGroup.h +41 -0
  74. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldRegGroupRef.h +40 -0
  75. zsp_arl_dm/share/include/zsp/arl/dm/IModelFieldRegRef.h +41 -0
  76. zsp_arl_dm/share/include/zsp/arl/dm/IPoolBindDirective.h +33 -0
  77. zsp_arl_dm/share/include/zsp/arl/dm/IPyImport.h +45 -0
  78. zsp_arl_dm/share/include/zsp/arl/dm/IRegGroup.h +32 -0
  79. zsp_arl_dm/share/include/zsp/arl/dm/IRewriteContext.h +44 -0
  80. zsp_arl_dm/share/include/zsp/arl/dm/IType.h +30 -0
  81. zsp_arl_dm/share/include/zsp/arl/dm/ITypeAction.h +25 -0
  82. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExec.h +53 -0
  83. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExecGroup.h +50 -0
  84. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExecProc.h +44 -0
  85. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExecTargetTmpl.h +59 -0
  86. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprMethodCallContext.h +45 -0
  87. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprMethodCallStatic.h +49 -0
  88. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprPureCompMethodCall.h +50 -0
  89. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprPyImportRef.h +44 -0
  90. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprPythonFieldRef.h +47 -0
  91. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprPythonMethodCall.h +47 -0
  92. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprPythonModuleRef.h +45 -0
  93. zsp_arl_dm/share/include/zsp/arl/dm/ITypeExprPythonSubscript.h +40 -0
  94. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldActivity.h +32 -0
  95. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldAddrClaim.h +52 -0
  96. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldAddrClaimTransparent.h +45 -0
  97. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldClaim.h +27 -0
  98. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldExecutor.h +40 -0
  99. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldExecutorClaim.h +41 -0
  100. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldInOut.h +27 -0
  101. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldMethod.h +39 -0
  102. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldPool.h +29 -0
  103. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldReg.h +47 -0
  104. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldRegGroup.h +40 -0
  105. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldRegGroupArr.h +49 -0
  106. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldRegRef.h +41 -0
  107. zsp_arl_dm/share/include/zsp/arl/dm/ITypeFieldRegVec.h +52 -0
  108. zsp_arl_dm/share/include/zsp/arl/dm/ITypeModelDumper.h +47 -0
  109. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmt.h +43 -0
  110. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtAssign.h +61 -0
  111. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtBreak.h +41 -0
  112. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtContinue.h +40 -0
  113. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtDeclScope.h +44 -0
  114. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtExpr.h +44 -0
  115. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtForeach.h +41 -0
  116. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtIfClause.h +46 -0
  117. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtIfElse.h +53 -0
  118. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtMatch.h +53 -0
  119. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtMatchChoice.h +48 -0
  120. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtRepeat.h +47 -0
  121. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtRepeatWhile.h +46 -0
  122. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtReturn.h +45 -0
  123. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtScope.h +62 -0
  124. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtVarDecl.h +50 -0
  125. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtWhile.h +47 -0
  126. zsp_arl_dm/share/include/zsp/arl/dm/ITypeProcStmtYield.h +42 -0
  127. zsp_arl_dm/share/include/zsp/arl/dm/IVisitor.h +246 -0
  128. zsp_arl_dm/share/include/zsp/arl/dm/TypeKindE.h +23 -0
  129. zsp_arl_dm/share/include/zsp/arl/dm/impl/ContextDelegator.h +549 -0
  130. zsp_arl_dm/share/include/zsp/arl/dm/impl/CopyVisitor.h +204 -0
  131. zsp_arl_dm/share/include/zsp/arl/dm/impl/IsResourcePool.h +55 -0
  132. zsp_arl_dm/share/include/zsp/arl/dm/impl/ModelBuildContext.h +52 -0
  133. zsp_arl_dm/share/include/zsp/arl/dm/impl/ModelEvalIteratorListenerBase.h +60 -0
  134. zsp_arl_dm/share/include/zsp/arl/dm/impl/RewriteVisitorBase.h +346 -0
  135. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskActionHasMemClaim.h +76 -0
  136. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskCollectTopLevelActivities.h +63 -0
  137. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskFindExecutor.h +69 -0
  138. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskGetExprDataType.h +84 -0
  139. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskGetSubField.h +98 -0
  140. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskGetTypeBitWidth.h +76 -0
  141. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskIsDataTypeFlowObj.h +73 -0
  142. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskIsDataTypePyObj.h +55 -0
  143. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskIsPackedStruct.h +57 -0
  144. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskIsRefGroupRef.h +60 -0
  145. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskIsTypeFieldRegGroup.h +60 -0
  146. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskIsTypeFieldRegGroupArr.h +40 -0
  147. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskPackStruct2Int.h +80 -0
  148. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskUnpackInt2Struct.h +123 -0
  149. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskVisitActionTypeClaimRef.h +70 -0
  150. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskVisitModelFieldClaim.h +64 -0
  151. zsp_arl_dm/share/include/zsp/arl/dm/impl/TaskVisitModelFieldInOut.h +64 -0
  152. zsp_arl_dm/share/include/zsp/arl/dm/impl/ValRefAction.h +43 -0
  153. zsp_arl_dm/share/include/zsp/arl/dm/impl/ValRefActivity.h +63 -0
  154. zsp_arl_dm/share/include/zsp/arl/dm/impl/ValRefActivityScope.h +51 -0
  155. zsp_arl_dm/share/include/zsp/arl/dm/impl/ValRefPyObj.h +75 -0
  156. zsp_arl_dm/share/include/zsp/arl/dm/impl/ValRefRegGroup.h +32 -0
  157. zsp_arl_dm/share/include/zsp/arl/dm/impl/VisitorBase.h +456 -0
  158. zsp_arl_dm/share/include/zsp/arl/dm/impl/VisitorDelegator.h +356 -0
  159. zsp_arl_dm/share/include/zsp/arl/dm/loader.h +39 -0
  160. zsp_arl_dm/val_ref_to_py_val.py +58 -0
  161. zuspec_arl_dm-0.1.0.15264414400rc0.dist-info/METADATA +25 -0
  162. zuspec_arl_dm-0.1.0.15264414400rc0.dist-info/RECORD +166 -0
  163. zuspec_arl_dm-0.1.0.15264414400rc0.dist-info/WHEEL +6 -0
  164. zuspec_arl_dm-0.1.0.15264414400rc0.dist-info/entry_points.txt +2 -0
  165. zuspec_arl_dm-0.1.0.15264414400rc0.dist-info/licenses/LICENSE +201 -0
  166. zuspec_arl_dm-0.1.0.15264414400rc0.dist-info/top_level.txt +1 -0
zsp_arl_dm/decl.pxd ADDED
@@ -0,0 +1,317 @@
1
+
2
+ cimport vsc_dm.decl as vsc
3
+ cimport debug_mgr.decl as dm
4
+
5
+ from libcpp.string cimport string as cpp_string
6
+ from libcpp.vector cimport vector as cpp_vector
7
+ from libcpp.memory cimport unique_ptr
8
+ from libcpp cimport bool
9
+ from libc.stdint cimport int32_t
10
+ from libc.stdint cimport int64_t
11
+ from libc.stdint cimport uint64_t
12
+ cimport cpython.ref as cpy_ref
13
+
14
+ ctypedef IContext *IContextP
15
+ ctypedef IDataTypeAction *IDataTypeActionP
16
+ ctypedef IDataTypeActivity *IDataTypeActivityP
17
+ ctypedef vsc.UP[IDataTypeActivity] IDataTypeActivityUP
18
+ ctypedef IDataTypeActivityScope *IDataTypeActivityScopeP
19
+ ctypedef IDataTypeActivityParallel *IDataTypeActivityParallelP
20
+ ctypedef IDataTypeActivityReplicate *IDataTypeActivityReplicateP
21
+ ctypedef IDataTypeActivitySchedule *IDataTypeActivityScheduleP
22
+ ctypedef IDataTypeActivitySequence *IDataTypeActivitySequenceP
23
+ ctypedef IDataTypeActivityTraverse *IDataTypeActivityTraverseP
24
+ ctypedef IDataTypeAddrClaim *IDataTypeAddrClaimP
25
+ ctypedef IDataTypeAddrClaimTransparent *IDataTypeAddrClaimTransparentP
26
+ ctypedef IDataTypeAddrHandle *IDataTypeAddrHandleP
27
+ ctypedef IDataTypeArlStruct *IDataTypeArlStructP
28
+ ctypedef IDataTypeComponent *IDataTypeComponentP
29
+ ctypedef IDataTypeFlowObj *IDataTypeFlowObjP
30
+ ctypedef IDataTypeFunction *IDataTypeFunctionP
31
+ ctypedef IDataTypeFunctionParamDecl *IDataTypeFunctionParamDeclP
32
+ ctypedef IDataTypePackedStruct *IDataTypePackedStructP
33
+ ctypedef IFactory *IFactoryP
34
+ ctypedef IModelEvalIterator *IModelEvalIteratorP
35
+ ctypedef IModelFieldAction *IModelFieldActionP
36
+ ctypedef IModelFieldComponent *IModelFieldComponentP
37
+ ctypedef IModelFieldComponentRoot *IModelFieldComponentRootP
38
+ ctypedef IModelFieldExecutor *IModelFieldExecutorP
39
+ ctypedef IModelFieldPool *IModelFieldPoolP
40
+ ctypedef IPoolBindDirective *IPoolBindDirectiveP
41
+ ctypedef vsc.UP[IPoolBindDirective] IPoolBindDirectiveUP
42
+ ctypedef ITypeFieldActivity *ITypeFieldActivityP
43
+ ctypedef vsc.UP[ITypeFieldActivity] ITypeFieldActivityUP
44
+ ctypedef ITypeFieldClaim *ITypeFieldClaimP
45
+ ctypedef ITypeFieldInOut *ITypeFieldInOutP
46
+ ctypedef ITypeFieldPool *ITypeFieldPoolP
47
+ ctypedef ITypeFieldReg *ITypeFieldRegP
48
+ ctypedef ITypeProcStmt *ITypeProcStmtP
49
+ ctypedef ITypeProcStmtDeclScope *ITypeProcStmtDeclScopeP
50
+ ctypedef ITypeProcStmtVarDecl *ITypeProcStmtVarDeclP
51
+
52
+ cdef extern from "zsp/arl/dm/IContext.h" namespace "zsp::arl::dm":
53
+ cdef cppclass IContext(vsc.IContext):
54
+ IDataTypeAction *findDataTypeAction(const cpp_string &)
55
+ IDataTypeFunction *findDataTypeFunction(const cpp_string &)
56
+ IDataTypeAction *mkDataTypeAction(const cpp_string &)
57
+ const cpp_vector[IDataTypeFunctionP] &getDataTypeFunctions() const
58
+ IDataTypeActivityParallel *mkDataTypeActivityParallel()
59
+ IDataTypeActivityReplicate *mkDataTypeActivityReplicate(vsc.ITypeExpr *)
60
+ IDataTypeActivitySchedule *mkDataTypeActivitySchedule()
61
+ IDataTypeActivitySequence *mkDataTypeActivitySequence()
62
+ IDataTypeActivityTraverse *mkDataTypeActivityTraverse(
63
+ vsc.ITypeExprFieldRef *,
64
+ vsc.ITypeConstraint *)
65
+ bool addDataTypeAction(IDataTypeAction *)
66
+ # IDataTypeArlStructP mkDataTypeArlStruct(const cpp_string &)
67
+ IDataTypeAddrClaimP mkDataTypeAddrClaim(const cpp_string &)
68
+ IDataTypeAddrClaimTransparentP mkDataTypeAddrClaimTransparent(const cpp_string &)
69
+ IDataTypeComponent *findDataTypeComponent(const cpp_string &)
70
+ IDataTypeComponent *mkDataTypeComponent(const cpp_string &)
71
+ bool addDataTypeComponent(IDataTypeComponent *)
72
+ IDataTypeFlowObj *findDataTypeFlowObj(const cpp_string &name, FlowObjKindE kind)
73
+ IDataTypeFlowObj *mkDataTypeFlowObj(const cpp_string &name, FlowObjKindE kind)
74
+ bool addDataTypeFlowObj(IDataTypeFlowObj *)
75
+
76
+ #TODO: IModelEvaluator *mkModelEvaluator()
77
+
78
+ IPoolBindDirective *mkPoolBindDirective(
79
+ PoolBindKind kind,
80
+ vsc.ITypeExprFieldRef *pool,
81
+ vsc.ITypeExprFieldRef *target)
82
+ ITypeFieldActivity *mkTypeFieldActivity(const cpp_string &, IDataTypeActivity *, bool)
83
+ ITypeFieldClaim *mkTypeFieldClaim(const cpp_string &, vsc.IDataType *, bool)
84
+ ITypeFieldInOut *mkTypeFieldInOut(const cpp_string &, vsc.IDataType *, bool)
85
+ ITypeFieldPool *mkTypeFieldPool(
86
+ const cpp_string &,
87
+ vsc.IDataType *,
88
+ bool own,
89
+ vsc.TypeFieldAttr,
90
+ int32_t)
91
+
92
+ cdef extern from "zsp/arl/dm/IDataTypeAction.h" namespace "zsp::arl::dm":
93
+ cdef cppclass IDataTypeAction(vsc.IDataTypeStruct):
94
+ IDataTypeComponent *getComponentType()
95
+ void setComponentType(IDataTypeComponent *)
96
+ vsc.ITypeFieldRef *getCompField() const
97
+ const cpp_vector[ITypeFieldActivityUP] &activities() const
98
+ void addActivity(ITypeFieldActivity *)
99
+
100
+ cdef extern from "zsp/arl/dm/IDataTypeActivity.h" namespace "zsp::arl::dm":
101
+ cdef cppclass IDataTypeActivity(vsc.IDataType):
102
+ pass
103
+
104
+ cdef extern from "zsp/arl/dm/IDataTypeActivityScope.h" namespace "zsp::arl::dm":
105
+ cdef cppclass IDataTypeActivityScope(IDataTypeActivity, vsc.IDataTypeStruct):
106
+ void addActivity(ITypeFieldActivity *)
107
+ const cpp_vector[ITypeFieldActivityUP] &getActivities() const
108
+ # const cpp_string &name() const
109
+ # void addField(vsc.ITypeField *)
110
+ # vsc.ITypeField *getField(int32_t idx)
111
+ # const cpp_vector[unique_ptr[vsc.ITypeField]] &getFields() const
112
+ # void addConstraint(vsc.ITypeConstraint *)
113
+ # const cpp_vector[unique_ptr[vsc.ITypeConstraint]] &getConstraints() const
114
+
115
+ pass
116
+
117
+ cdef extern from "zsp/arl/dm/IDataTypeActivityReplicate.h" namespace "zsp::arl::dm":
118
+ cdef cppclass IDataTypeActivityReplicate(IDataTypeActivityScope):
119
+ vsc.ITypeExpr *getCount() const
120
+
121
+ cdef extern from "zsp/arl/dm/IDataTypeActivityParallel.h" namespace "zsp::arl::dm":
122
+ cdef cppclass IDataTypeActivityParallel(IDataTypeActivityScope):
123
+ pass
124
+
125
+ cdef extern from "zsp/arl/dm/IDataTypeActivitySchedule.h" namespace "zsp::arl::dm":
126
+ cdef cppclass IDataTypeActivitySchedule(IDataTypeActivityScope):
127
+ pass
128
+
129
+ cdef extern from "zsp/arl/dm/IDataTypeActivitySequence.h" namespace "zsp::arl::dm":
130
+ cdef cppclass IDataTypeActivitySequence(IDataTypeActivityScope):
131
+ pass
132
+
133
+ cdef extern from "zsp/arl/dm/IDataTypeActivityTraverse.h" namespace "zsp::arl::dm":
134
+ cdef cppclass IDataTypeActivityTraverse(IDataTypeActivity):
135
+ vsc.ITypeExprFieldRef *getTarget() const
136
+ vsc.ITypeConstraint *getWithC() const
137
+ void setWithC(vsc.ITypeConstraint *c)
138
+
139
+ cdef extern from "zsp/arl/dm/IDataTypeArlStruct.h" namespace "zsp::arl::dm":
140
+ cdef cppclass IDataTypeArlStruct(vsc.IDataTypeStruct):
141
+ pass
142
+
143
+ cdef extern from "zsp/arl/dm/IDataTypeAddrClaim.h" namespace "zsp::arl::dm":
144
+ cdef cppclass IDataTypeAddrClaim(IDataTypeArlStruct):
145
+ pass
146
+
147
+ cdef extern from "zsp/arl/dm/IDataTypeAddrClaimTransparent.h" namespace "zsp::arl::dm":
148
+ cdef cppclass IDataTypeAddrClaimTransparent(IDataTypeAddrClaim):
149
+ pass
150
+
151
+ cdef extern from "zsp/arl/dm/IDataTypeAddrHandle.h" namespace "zsp::arl::dm":
152
+ cdef cppclass IDataTypeAddrHandle(vsc.IDataTypeStruct):
153
+ pass
154
+
155
+ cdef extern from "zsp/arl/dm/IDataTypeComponent.h" namespace "zsp::arl::dm":
156
+ cdef cppclass IDataTypeComponent(vsc.IDataTypeStruct):
157
+ const cpp_vector[IDataTypeActionP] &getActionTypes() const
158
+ void addActionType(IDataTypeAction *)
159
+ void addPoolBindDirective(IPoolBindDirective *)
160
+ cpp_vector[IPoolBindDirectiveUP] &getPoolBindDirectives() const
161
+ pass
162
+
163
+ cdef extern from "zsp/arl/dm/IDataTypeFlowObj.h" namespace "zsp::arl::dm":
164
+ cdef enum FlowObjKindE:
165
+ Buffer "zsp::arl::dm::FlowObjKindE::Buffer"
166
+ Resource "zsp::arl::dm::FlowObjKindE::Resource"
167
+ State "zsp::arl::dm::FlowObjKindE::State"
168
+ Stream "zsp::arl::dm::FlowObjKindE::Stream"
169
+
170
+ cdef cppclass IDataTypeFlowObj(vsc.IDataTypeStruct):
171
+ FlowObjKindE kind() const
172
+
173
+ cdef extern from "zsp/arl/dm/ITypeProcStmt.h" namespace "zsp::arl::dm":
174
+ cdef cppclass ITypeProcStmt(vsc.IAccept):
175
+ pass
176
+
177
+ cdef extern from "zsp/arl/dm/ITypeProcStmtDeclScope.h" namespace "zsp::arl::dm":
178
+ cdef cppclass ITypeProcStmtDeclScope(vsc.IAccept):
179
+ vsc.IAssociatedData *getAssociatedData()
180
+ void setAssociatedData(vsc.IAssociatedData *)
181
+ pass
182
+
183
+ cdef extern from "zsp/arl/dm/ITypeProcStmtVarDecl.h" namespace "zsp::arl::dm":
184
+ cdef cppclass ITypeProcStmtVarDecl(ITypeProcStmt):
185
+ const cpp_string &name() const
186
+ vsc.IDataType *getDataType() const
187
+ vsc.ITypeExpr *getInit() const
188
+
189
+ cdef extern from "zsp/arl/dm/IDataTypeFunctionParamDecl.h" namespace "zsp::arl::dm":
190
+ cdef enum ParamDir:
191
+ In "zsp::arl::dm::ParamDir::In"
192
+ Out "zsp::arl::dm::ParamDir::Out"
193
+ InOut "zsp::arl::dm::ParamDir::InOut"
194
+
195
+ cdef cppclass IDataTypeFunctionParamDecl(ITypeProcStmtVarDecl):
196
+ ParamDir getDirection() const
197
+
198
+ cdef extern from "zsp/arl/dm/IDataTypeFunction.h" namespace "zsp::arl::dm":
199
+ cdef enum DataTypeFunctionFlags:
200
+ NoFlags "zsp::arl::dm::DataTypeFunctionFlags::NoFlags"
201
+ Solve "zsp::arl::dm::DataTypeFunctionFlags::Solve"
202
+ Target "zsp::arl::dm::DataTypeFunctionFlags::Target"
203
+ Core "zsp::arl::dm::DataTypeFunctionFlags::Core"
204
+
205
+ cdef cppclass IDataTypeFunction(ITypeProcStmtDeclScope):
206
+ const cpp_string &name()
207
+ vsc.IDataType *getReturnType() const
208
+ const cpp_vector[IDataTypeFunctionParamDeclP] &getParameters() const
209
+ DataTypeFunctionFlags getFlags() const
210
+ bool hasFlags(DataTypeFunctionFlags) const
211
+
212
+ cdef extern from "zsp/arl/dm/IDataTypePackedStruct.h" namespace "zsp::arl::dm":
213
+ cdef cppclass IDataTypePackedStruct(vsc.IDataTypeStruct):
214
+ pass
215
+
216
+ cdef extern from "zsp/arl/dm/IFactory.h" namespace "zsp::arl::dm":
217
+ cdef cppclass IFactory:
218
+ void init(dm.IDebugMgr *)
219
+ IContext *mkContext(vsc.IContext *vsc_ctxt)
220
+
221
+ cdef extern from "zsp/arl/dm/IModelBuildContext.h" namespace "zsp::arl::dm":
222
+ cdef cppclass IModelBuildContext:
223
+ IContext *ctxt()
224
+ pass
225
+
226
+ #cdef extern from "zsp/arl/dm/IModelEvaluator.h" namespace "zsp::arl::dm":
227
+ # cdef cppclass IModelEvaluator:
228
+ # IModelEvalIterator *eval(
229
+ # vsc.IRandState *,
230
+ # IModelFieldComponent *,
231
+ # IDataTypeAction *)
232
+
233
+ cdef extern from "zsp/arl/dm/IModelEvalIterator.h" namespace "zsp::arl::dm":
234
+ cdef enum ModelEvalNodeT:
235
+ Action "zsp::arl::dm::ModelEvalNodeT::Action"
236
+ Parallel "zsp::arl::dm::ModelEvalNodeT::Parallel"
237
+ Sequence "zsp::arl::dm::ModelEvalNodeT::Sequence"
238
+ cdef cppclass IModelEvalIterator:
239
+ bool next()
240
+ ModelEvalNodeT type() const
241
+ IModelFieldAction *action()
242
+ IModelEvalIterator *iterator()
243
+
244
+ cdef extern from "zsp/arl/dm/IModelEvalIterator.h" namespace "zsp::arl::dm":
245
+ cdef cppclass IModelEvalIterator:
246
+ pass
247
+
248
+ cdef extern from "zsp/arl/dm/IModelFieldAction.h" namespace "zsp::arl::dm":
249
+ cdef cppclass IModelFieldAction(vsc.IModelField):
250
+ bool isCompound() const
251
+ pass
252
+
253
+ cdef extern from "zsp/arl/dm/IModelFieldComponent.h" namespace "zsp::arl::dm":
254
+ cdef cppclass IModelFieldComponent(vsc.IModelField):
255
+ pass
256
+
257
+ cdef extern from "zsp/arl/dm/IModelFieldComponentRoot.h" namespace "zsp::arl::dm":
258
+ cdef cppclass IModelFieldComponentRoot(IModelFieldComponent):
259
+ void initCompTree()
260
+
261
+ cdef extern from "zsp/arl/dm/IModelFieldExecutor.h" namespace "zsp::arl::dm":
262
+ cdef cppclass IModelFieldExecutor(vsc.IModelField):
263
+ pass
264
+
265
+ cdef extern from "zsp/arl/dm/IModelFieldPool.h" namespace "zsp::arl::dm":
266
+ cdef cppclass IModelFieldPool(vsc.IModelField):
267
+ pass
268
+
269
+ cdef extern from "zsp/arl/dm/IPoolBindDirective.h" namespace "zsp::arl::dm":
270
+ cdef enum PoolBindKind:
271
+ All "zsp::arl::dm::PoolBindKind::All"
272
+ Ref "zsp::arl::dm::PoolBindKind::Ref"
273
+
274
+ cdef cppclass IPoolBindDirective:
275
+ PoolBindKind kind() const
276
+ vsc.ITypeExprFieldRef *getPool() const
277
+ vsc.ITypeExprFieldRef *getTarget() const
278
+
279
+ cdef extern from "zsp/arl/dm/ITypeExec.h" namespace "zsp::arl::dm":
280
+ cdef enum ExecKindT:
281
+ ExecBody "zsp::arl::dm::ExecKindT::Body"
282
+ ExecPreSolve "zsp::arl::dm::ExecKindT::PreSolve"
283
+ ExecPostSolve "zsp::arl::dm::ExecKindT::PostSolve"
284
+
285
+ cdef extern from "zsp/arl/dm/ITypeFieldActivity.h" namespace "zsp::arl::dm":
286
+ cdef cppclass ITypeFieldActivity(vsc.ITypeField):
287
+ pass
288
+
289
+ cdef extern from "zsp/arl/dm/ITypeFieldClaim.h" namespace "zsp::arl::dm":
290
+ cdef cppclass ITypeFieldClaim(vsc.ITypeField):
291
+ bool isLock() const
292
+
293
+ cdef extern from "zsp/arl/dm/ITypeFieldInOut.h" namespace "zsp::arl::dm":
294
+ cdef cppclass ITypeFieldInOut(vsc.ITypeField):
295
+ bool isInput() const
296
+
297
+ cdef extern from "zsp/arl/dm/ITypeFieldPool.h" namespace "zsp::arl::dm":
298
+ cdef cppclass ITypeFieldPool(vsc.ITypeField):
299
+ int32_t getDeclSize()
300
+
301
+ cdef extern from "zsp/arl/dm/ITypeFieldReg.h" namespace "zsp::arl::dm":
302
+ cdef cppclass ITypeFieldReg(vsc.ITypeField):
303
+ int64_t getAddrOffset()
304
+ void setAddrOffset(int64_t off)
305
+ int32_t getWidth() const
306
+
307
+ cdef extern from "zsp/arl/dm/IVisitor.h" namespace "zsp::arl::dm":
308
+ cdef cppclass IVisitor(vsc.IVisitor):
309
+ pass
310
+
311
+ cdef extern from "VisitorProxy.h" namespace "zsp::arl::dm":
312
+ cdef cppclass VisitorProxy(IVisitor):
313
+ VisitorProxy(cpy_ref.PyObject *)
314
+
315
+ cdef extern IModelBuildContext *mkModelBuildContextArl(IContext *ctxt)
316
+
317
+
Binary file
zsp_arl_dm/pkginfo.py ADDED
@@ -0,0 +1,23 @@
1
+ import os
2
+ import ivpm
3
+
4
+ class PkgInfo(ivpm.PkgInfo):
5
+
6
+ def __init__(self):
7
+ pkgdir = os.path.dirname(os.path.abspath(__file__))
8
+ projdir = os.path.dirname(os.path.dirname(pkgdir))
9
+ super().__init__("zuspec-arl-dm", os.path.dirname(pkgdir))
10
+
11
+ if os.path.isdir(os.path.join(projdir, "src")):
12
+ self._incdirs = [
13
+ os.path.join(projdir, "src", "include"),
14
+ os.path.join(projdir, "python")]
15
+ self._libdirs = [
16
+ os.path.join(projdir, "build", "lib"),
17
+ os.path.join(projdir, "build", "lib64")]
18
+ else:
19
+ self._incdirs = [os.path.join(pkgdir, "share", "include")]
20
+ self._libdirs = [os.path.join(pkgdir)]
21
+
22
+ self._deps = ["vsc-dm"]
23
+ self._libs = ["zsp-arl-dm"]
@@ -0,0 +1,46 @@
1
+ #****************************************************************************
2
+ #* py_val_to_val_ref.py
3
+ #*
4
+ #* Copyright 2023 Matthew Ballance and Contributors
5
+ #*
6
+ #* Licensed under the Apache License, Version 2.0 (the "License"); you may
7
+ #* not use this file except in compliance with the License.
8
+ #* You may obtain a copy of the License at:
9
+ #*
10
+ #* http://www.apache.org/licenses/LICENSE-2.0
11
+ #*
12
+ #* Unless required by applicable law or agreed to in writing, software
13
+ #* distributed under the License is distributed on an "AS IS" BASIS,
14
+ #* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ #* See the License for the specific language governing permissions and
16
+ #* limitations under the License.
17
+ #*
18
+ #* Created on:
19
+ #* Author:
20
+ #*
21
+ #****************************************************************************
22
+
23
+ class PyValToValRef(object):
24
+
25
+ def __init__(self, ctxt):
26
+ self._ctxt = ctxt
27
+
28
+ def toValRef(self, v):
29
+ ret = None
30
+ if type(v) == int:
31
+ is_signed = (v < 0)
32
+ if v > 0xFFFFFFFF:
33
+ width = 64
34
+ elif v > 0xFFFF:
35
+ width = 32
36
+ elif v > 0xFF:
37
+ width = 16
38
+ else:
39
+ width = 8
40
+ ret = self._ctxt.mkValRefInt(v, is_signed, width)
41
+ else:
42
+ raise Exception("Unknown value type %s" % str(v))
43
+ print("v=%s ret=%s" % (str(v), str(ret)))
44
+ return ret
45
+
46
+
@@ -0,0 +1,39 @@
1
+ /*
2
+ * TypeFieldAddrClaim.cpp
3
+ *
4
+ * Copyright 2023 Matthew Ballance and Contributors
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
7
+ * not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at:
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ *
18
+ * Created on:
19
+ * Author:
20
+ */
21
+ #include "TypeFieldAddrClaim.h"
22
+
23
+
24
+ namespace zsp {
25
+ namespace arl {
26
+ namespace dm {
27
+
28
+
29
+ TypeFieldAddrClaim::TypeFieldAddrClaim() {
30
+
31
+ }
32
+
33
+ TypeFieldAddrClaim::~TypeFieldAddrClaim() {
34
+
35
+ }
36
+
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * TypeFieldAddrClaim.h
3
+ *
4
+ * Copyright 2023 Matthew Ballance and Contributors
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
7
+ * not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at:
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ *
18
+ * Created on:
19
+ * Author:
20
+ */
21
+ #pragma once
22
+
23
+ namespace zsp {
24
+ namespace arl {
25
+ namespace dm {
26
+
27
+
28
+
29
+ class TypeFieldAddrClaim {
30
+ public:
31
+ TypeFieldAddrClaim();
32
+
33
+ virtual ~TypeFieldAddrClaim();
34
+
35
+ };
36
+
37
+ }
38
+ }
39
+ }
40
+
41
+
@@ -0,0 +1,6 @@
1
+
2
+ #pragma once
3
+ #include "zsp/arl/dm/IFactory.h"
4
+
5
+ extern "C" zsp::arl::dm::IFactory *zsp_arl_dm_getFactory();
6
+
@@ -0,0 +1,28 @@
1
+ /*
2
+ * IAccept.h
3
+ *
4
+ * Created on: Apr 2, 2022
5
+ * Author: mballance
6
+ */
7
+
8
+ #pragma once
9
+ #include "zsp/arl/dm/IVisitor.h"
10
+
11
+ namespace zsp {
12
+ namespace arl {
13
+ namespace dm {
14
+
15
+
16
+ class IAccept {
17
+ public:
18
+
19
+ virtual ~IAccept () { }
20
+
21
+ virtual void accept(IVisitor *v) = 0;
22
+
23
+ };
24
+
25
+ }
26
+ }
27
+ }
28
+
@@ -0,0 +1,30 @@
1
+ /*
2
+ * IArl.h
3
+ *
4
+ * Created on: Apr 3, 2022
5
+ * Author: mballance
6
+ */
7
+
8
+ #pragma once
9
+ #include "zsp/arl/dm/IContext.h"
10
+ #include "dmgr/IDebugMgr.h"
11
+
12
+ namespace zsp {
13
+ namespace arl {
14
+ namespace dm {
15
+
16
+
17
+ class IArl {
18
+ public:
19
+
20
+ virtual ~IArl() { }
21
+
22
+ virtual void init(dmgr::IDebugMgr *dbg_mgr) = 0;
23
+
24
+ virtual IContext *mkContext(vsc::dm::IContext *ctxt) = 0;
25
+
26
+ };
27
+
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,41 @@
1
+
2
+ #pragma once
3
+ #include <vector>
4
+ #include "zsp/arl/dm/IDataTypeComponent.h"
5
+ #include "zsp/arl/dm/IModelFieldPool.h"
6
+
7
+ namespace zsp {
8
+ namespace arl {
9
+ namespace dm {
10
+
11
+
12
+ class IModelFieldComponent;
13
+
14
+ class IComponentMap {
15
+ public:
16
+
17
+ virtual ~IComponentMap() { }
18
+
19
+ virtual void addSubComponentMap(const IComponentMap *m) = 0;
20
+
21
+ /**
22
+ * @brief Return all legal sub-contexts for the specified component type
23
+ */
24
+ virtual const std::vector<IModelFieldComponent *> &getSubContexts(IDataTypeComponent *t) const = 0;
25
+
26
+ virtual const std::vector<IDataTypeComponent *> &getComponentTypes() const = 0;
27
+
28
+ virtual void addPoolMapping(vsc::dm::ITypeField *claim_ref, IModelFieldPool *pool) = 0;
29
+
30
+ /**
31
+ * @brief Returns the pool mapped to the specified claim field in this context
32
+ *
33
+ */
34
+ virtual IModelFieldPool *getPool(vsc::dm::ITypeField *claim_ref) const = 0;
35
+
36
+
37
+ };
38
+
39
+ }
40
+ }
41
+ }