📄 test.tcl
字号:
proc ShowModuleProp {idModule} { global fp puts $fp " <---- properties ----" puts $fp " npiName=[npi_get $idModule -npiName]" puts $fp " npiFullName=[npi_get $idModule -npiFullName]" puts $fp " npiType=[npi_get $idModule -npiType]" puts $fp " npiFile=[npi_get $idModule -npiFile]" puts $fp " npiLineNo=[npi_get $idModule -npiLineNo]" puts $fp " npiIsTopModule=[npi_get $idModule -npiIsTopModule]" puts $fp " npiIsCellInstance=[npi_get $idModule -npiIsCellInstance]" #puts $fp " npiIsProtected=[npi_get $idModule -npiIsProtected]" puts $fp " npiDefNetType=[npi_get $idModule -npiDefNetType]" puts $fp " npiTimePrecision=[npi_get $idModule -npiTimePrecision]" puts $fp " npiTimeUnit=[npi_get $idModule -npiTimeUnit]" #puts $fp " npiUnconnDrive=[npi_get $idModule -npiUnconnDrive]" puts $fp " >---- properties ----"}proc foreach_IterateHandle {iter_handle iter_type} { global fp puts $fp " <---$iter_type --->" set Object_Handle [npi_scan $iter_handle] while {$Object_Handle != "NULL"} { puts $fp " <---begin npi_scan \$iter_handle--->" puts $fp " npiType = [npi_get $Object_Handle -npiType]" puts $fp " npiName = [npi_get $Object_Handle -npiName]" puts $fp " npiLineNo = [npi_get $Object_Handle -npiLineNo]" puts $fp " <---end of npi_scan \$iter_handle--->" set Object_Handle [npi_scan $iter_handle] } puts $fp " <---end of $iter_type --->"}proc ShowModuleRelationship {Module} { global fp puts $fp " <---relationship --->" set Ref_list [npi_iterate $Module -npiReferenced] foreach_IterateHandle $Ref_list "npi_iterate \$Module -npiReferenced" set Inst_list [npi_iterate $Module -npiType npiInst] foreach_IterateHandle $Inst_list "npi_iterate \$Module -npiType npiInst" set Port_list [npi_iterate $Module -npiType npiPort] foreach_IterateHandle $Port_list "npi_iterate \$Module -npiType npiPort" set Prim_list [npi_iterate $Module -npiType npiPrimitive] foreach_IterateHandle $Prim_list "npi_iterate \$Module -npiType npiPrimitive" set Net_list [npi_iterate $Module -npiType npiNet] foreach_IterateHandle $Net_list "npi_iterate \$Module -npiType npiNet" set Reg_list [npi_iterate $Module -npiType npiReg] foreach_IterateHandle $Reg_list "npi_iterate \$Module -npiType npiReg" set Memory_list [npi_iterate $Module -npiType npiMemory] foreach_IterateHandle $Memory_list "npi_iterate \$Module -npiType npiMemory" set Variables_list [npi_iterate $Module -npiType npiVariables] foreach_IterateHandle $Variables_list "npi_iterate \$Module -npiType npiVariables" set NamedEvent_list [npi_iterate $Module -npiType npiNamedEvent] foreach_IterateHandle $NamedEvent_list "npi_iterate \$Module -npiType npiNamedEvent" set Scope_list [npi_iterate $Module -npiType npiInternalScope] foreach_IterateHandle $Scope_list "npi_iterate \$Module -npiType npiInternalScope" set Process_list [npi_iterate $Module -npiType npiProcess] foreach_IterateHandle $Process_list "npi_iterate \$Module -npiType npiProcess" set ContAssign_list [npi_iterate $Module -npiType npiContAssign] foreach_IterateHandle $ContAssign_list "npi_iterate \$Module -npiType npiContAssign" set Parameter_list [npi_iterate $Module -npiType npiParameter] foreach_IterateHandle $Parameter_list "npi_iterate \$Module -npiType npiParameter" set DefParam_list [npi_iterate $Module -npiType npiDefParam] foreach_IterateHandle $DefParam_list "npi_iterate \$Module -npiType npiDefParam" set IODecl_list [npi_iterate $Module -npiType npiIODecl] foreach_IterateHandle $IODecl_list "npi_iterate \$Module -npiType npiIODecl" puts $fp " <---end of relationship --->"}proc ShowModulePropAndRelationship {} { global g_Module global fp set Module_id $g_Module puts $fp "<---begin showing module information--->" ShowModuleProp $Module_id ShowModuleRelationship $Module_id puts $fp "<---end of showing module information--->"}set log_file [file join [file dirname [info script]] [file tail [info script]].out]set fp [open $log_file w]fconfigure $fp -buffering nonenpi_register_cb -npiModuleBased ModuleBegin ShowModulePropAndRelationshipnpi_traverse_model -npiModuleBasedclose $fp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -