SKILL Q: How to get a hir prop forn the tch lib?

B

Bernd Fischer

Guest
Hi,

How can I get a hierarchical property form the technology library.

Example:
I have the 'xSnapSpacing' stored a hierarchical property to
the techlib (don't ask why, this is design kit specific).

Properties
----------
techLibName string "myTechLibName"
viewProps hier >
maskLayout hier
xSnapSpacing float 0.05
ySnapSpacing float 0.05
I want to get the 'xSnapSpacing' to prevent some offgrid
placement for a inhouse tool.

ddGetObj( techGetTechLibName( geGetEditCellView( w_windowId ) ) )~>viewProps

Returns the 'viewProps' database ID, but how to go further?

Thanks Bernd
 
did you try

viewProps = ddGetObj( techGetTechLibName(
geGetEditCellView( ) ) )~>viewProps~>value

maskLayoutProps = car( exists( x viewProps x~>name=="maskLayout" ) )~>value

xSnapSpacing = car( exists( x maskLayoutProps
x~>name=="xSnapSpacing" ) )~>value

that is, the viewProps property value is a list of properties.
you find the one which has name=="maskLayout", whose value
is a list of properties. Find then the one with name=="xSnapSpacing"
and get the value.

think it should work.


"Bernd Fischer" <bernd.fischer@xignal.de> wrote in message
news:4028ABB8.9090901@xignal.de...
Hi,

How can I get a hierarchical property form the technology library.

Example:
I have the 'xSnapSpacing' stored a hierarchical property to
the techlib (don't ask why, this is design kit specific).

Properties
----------
techLibName string "myTechLibName"
viewProps hier
maskLayout hier
xSnapSpacing float 0.05
ySnapSpacing float 0.05

I want to get the 'xSnapSpacing' to prevent some offgrid
placement for a inhouse tool.

ddGetObj( techGetTechLibName( geGetEditCellView(
w_windowId ) ) )~>viewProps

Returns the 'viewProps' database ID, but how to go further?

Thanks Bernd
 
Hi,

I found a way, but this doesn't statisfy me very much.

car(
setof(
d_prop
car(
ddGetObj(
techGetTechLibName( geGetEditCellView( w_windowId )
) )~>viewProps~>value~>value )
equal( d_prop~>name "xSnapSpacing" ) )
)~>value

There must be an easier way to get this!?

Bernd


Bernd Fischer wrote:
Hi,

How can I get a hierarchical property form the technology library.

Example:
I have the 'xSnapSpacing' stored a hierarchical property to
the techlib (don't ask why, this is design kit specific).

Properties
----------
techLibName string "myTechLibName"
viewProps hier
maskLayout hier
xSnapSpacing float 0.05
ySnapSpacing float 0.05

I want to get the 'xSnapSpacing' to prevent some offgrid
placement for a inhouse tool.

ddGetObj( techGetTechLibName( geGetEditCellView( w_windowId ) )
)~>viewProps

Returns the 'viewProps' database ID, but how to go further?

Thanks Bernd
 
hum,

searched a bit, probably a cleaner way to do it would be

lib = ddGetObj( techGetTechLibName( geGetEditCellView( w_windowId ) ) )
viewProps = dbFindProp( lib "viewProps" )
maskLayoutProps = dbFindProp( viewProps "maskLayout" )
xSnapSpacing = sbFindProp( maskLayoutProps "xSnapSpacing" )~>value


though probably functionally equivalent this is more portable to future
version.

stephane

"Bernd Fischer" <bernd.fischer@xignal.de> wrote in message
news:4028ABB8.9090901@xignal.de...
Hi,

How can I get a hierarchical property form the technology library.

Example:
I have the 'xSnapSpacing' stored a hierarchical property to
the techlib (don't ask why, this is design kit specific).

Properties
----------
techLibName string "myTechLibName"
viewProps hier
maskLayout hier
xSnapSpacing float 0.05
ySnapSpacing float 0.05

I want to get the 'xSnapSpacing' to prevent some offgrid
placement for a inhouse tool.

ddGetObj( techGetTechLibName( geGetEditCellView(
w_windowId ) ) )~>viewProps

Returns the 'viewProps' database ID, but how to go further?

Thanks Bernd
 
Thanks, yours is the a better way, checking the properties name
rather than I do get the position in the list.

Bernd

S. Badel wrote:
did you try

viewProps = ddGetObj( techGetTechLibName(
geGetEditCellView( ) ) )~>viewProps~>value

maskLayoutProps = car( exists( x viewProps x~>name=="maskLayout" ) )~>value

xSnapSpacing = car( exists( x maskLayoutProps
x~>name=="xSnapSpacing" ) )~>value

that is, the viewProps property value is a list of properties.
you find the one which has name=="maskLayout", whose value
is a list of properties. Find then the one with name=="xSnapSpacing"
and get the value.

think it should work.


"Bernd Fischer" <bernd.fischer@xignal.de> wrote in message
news:4028ABB8.9090901@xignal.de...

Hi,

How can I get a hierarchical property form the technology library.

Example:
I have the 'xSnapSpacing' stored a hierarchical property to
the techlib (don't ask why, this is design kit specific).

Properties
----------
techLibName string "myTechLibName"
viewProps hier
maskLayout hier
xSnapSpacing float 0.05
ySnapSpacing float 0.05

I want to get the 'xSnapSpacing' to prevent some offgrid
placement for a inhouse tool.

ddGetObj( techGetTechLibName( geGetEditCellView(

w_windowId ) ) )~>viewProps

Returns the 'viewProps' database ID, but how to go further?

Thanks Bernd
 

Welcome to EDABoard.com

Sponsor

Back
Top