E
Erik Wanta
Guest
We want to be able to support the use of multiple PDKs at one time. I
want to be able to load the appropriate display.drf for the layout
that I am currently opening up. I created a user trigger to do a
drLoadDrf() on the display.drf for the technology that the library is
attached to.
Problems:
1. I get a pop up message when I open that layout asking if I want to
see a list of all the undefined layers. So, it seems that drLoadDrf
is taking place after it checks to see if packets are defined for all
the layers. Any ideas how I can disable this warning or load the
display.drf sooner?
2. How do I clear all the packets ... from virtual memory? I want to
start from a clean slate before loading the display.drf from a
different technology.
3. If I use drLoadDrf it asks If I want to save the display.drf when
I exit icfb. Maybe if I find a way to purge packets in step 2 it
won't ask.
4. Can't have 2 layouts for 2 different technologies open in the same
session.
procedure(dt(argList)
prog((techName libPath)
when(techName=techGetTechLibName(argList->libId)
/*
foreach(packet drGetPacketList(drGetDisplay("display"))
drDeletePacket(drGetDisplay("display") packet)
) ; foreach
*/
libPath=ddGetObjWritePath(ddGetObj(techName))
when((isFile(strcat(libPath "/display.drf")) &&
!isFile("display.drf"))
drLoadDrf(strcat(libPath "/display.drf"))
) ; when
) ; when
return(t)
) ; prog
) ; procedure
when(member('dt deGetAppInfo("maskLayout")->userAppTrigList)
;if registered, unregister
_deUnRegUserTrigger("maskLayout" 'dt nil nil)
) ; when
;register the display.drf load user trigger
deRegUserTriggers("maskLayout" 'dt nil nil)
---
Erik
want to be able to load the appropriate display.drf for the layout
that I am currently opening up. I created a user trigger to do a
drLoadDrf() on the display.drf for the technology that the library is
attached to.
Problems:
1. I get a pop up message when I open that layout asking if I want to
see a list of all the undefined layers. So, it seems that drLoadDrf
is taking place after it checks to see if packets are defined for all
the layers. Any ideas how I can disable this warning or load the
display.drf sooner?
2. How do I clear all the packets ... from virtual memory? I want to
start from a clean slate before loading the display.drf from a
different technology.
3. If I use drLoadDrf it asks If I want to save the display.drf when
I exit icfb. Maybe if I find a way to purge packets in step 2 it
won't ask.
4. Can't have 2 layouts for 2 different technologies open in the same
session.
procedure(dt(argList)
prog((techName libPath)
when(techName=techGetTechLibName(argList->libId)
/*
foreach(packet drGetPacketList(drGetDisplay("display"))
drDeletePacket(drGetDisplay("display") packet)
) ; foreach
*/
libPath=ddGetObjWritePath(ddGetObj(techName))
when((isFile(strcat(libPath "/display.drf")) &&
!isFile("display.drf"))
drLoadDrf(strcat(libPath "/display.drf"))
) ; when
) ; when
return(t)
) ; prog
) ; procedure
when(member('dt deGetAppInfo("maskLayout")->userAppTrigList)
;if registered, unregister
_deUnRegUserTrigger("maskLayout" 'dt nil nil)
) ; when
;register the display.drf load user trigger
deRegUserTriggers("maskLayout" 'dt nil nil)
---
Erik