Problem Statement
Add support for opening and storing MATLAB views.
Proposed Solution
Add a matlab package view type for matlab.
View Package
/*****************************************************************
* *
* Softworks Software Data Manager MATLAB Support Package *
* *
*****************************************************************/
SdmMat = let(()
procedure(startIDE(@rest restArgs) let((cmd)
if(restArgs then
;cmd = sprintf(nil "matlab -r \"edit %s\" & \n" buildString(restArgs))
cmd = sprintf(nil "tcsh -c \"matlab -r \"edit %s\" &\" &" buildString(restArgs))
printf(cmd)
system(cmd)
else
system("matlab &"))
))
procedure(DataTrigger(@optional argList)
let((libName cellName file fileName objId viewFileName viewName viewType)
;printf("Calling SkyVer View App Trigger on %L !\n", argList);
libName = argList->libName
cellName = argList->cellName
viewName = argList->viewName
viewType = argList->viewType
viewFileName = ddMapGetViewTypeFileName( viewType )
if( objId = ddGetObj(libName cellName viewName viewFileName nil "r") then
file = ddGetObjWritePath(objId)
;printf("filename = %s\n" fileName)
; Start matlab editor
if(isFile(file) then
startIDE(file)
else
;warn("Issue!!!\n"))
warn("%s/%s/%s doesn't appear to be a matlab View !\nMissing the *.py file!\n", libName cellName viewName))
else
warn("module must be created outside Cadence tools !!\n")
;dbOpenCellViewByType(libName cellName viewName args->rootType "wn")
case(viewType
("matlab_code" fileName = strcat(cellName ".m"))
(t fileName = strcat(cellName ".m"))
)
if(objId = ddGetObj(libName cellName viewName fileName nil "w") then
dbSave(objId)
file = ddGetObjWritePath(objId)
StartIDE(file)
else
warn("Could not create the cellview"))
)
t
))
procedure(ViewAppTrigger(@optional argList)
;printf("Calling SkyVer module View data Trigger on %L !\n", argList);
t)
procedure(EnableTrigger(@optional argList)
;printf("Calling SkyVer module View data Trigger on %L !\n", argList);
t)
list(nil
'startIDE startIDE
'DataTrigger DataTrigger
'ViewAppTrigger ViewAppTrigger
'EnableTrigger EnableTrigger
))
SdmStartMatlab = SdmMat->startIDE
SdmMatlabDataTrigger= SdmMat->DataTrigger
SdmMatlabViewAppTrigger = SdmMat->ViewAppTrigger
SdmMatlabEnableTrigger = SdmMat->EnableTrigger
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Register Python Custom Cellviews ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
when(!member("matlab_code" deGetAllViewTypes())
deRegApp(
?appName "matlab"
?enableTrigger 'SdmMatlabEnableTrigger
?dataTrigger 'SdmMatlabDataTrigger
?viewType "matlab_code"
?appTrigger 'SdmMatlabViewAppTrigger
?widgetType "graphics"
)
)
Documentation
MATLAB Views
============
`MATLAB <https://www.mathworks.com/products/matlab.html>`_ view support is
still under development
+-------------+-----------------+-------------+------------------------------+
| View Type | Extensions | Editors | Description |
+=============+=================+=============+==============================+
| matlab_code | \*.m | MATLAB, | A MATLAB code file. Opened |
| | | gedit | using MATLAB. |
+-------------+-----------------+-------------+------------------------------+
Alternatives Considered
Proposed Action Plan
Problem Statement
Add support for opening and storing MATLAB views.
Proposed Solution
Add a matlab package view type for matlab.
View Package
Documentation
Alternatives Considered
Proposed Action Plan