This chapter provides a detailed description of each Python class that corresponds to the GUI representation.
Each class includes a set of associated properties and methods. Common property methods shared by all these classes include list_property(...), list_property_value(...), report_property(...), and reset_property(...). A detailed description of all property methods is provided in a separate sub-chapter.
There are also special handler classes that provide a unique object within a session and represent the Python alternatives to tool GUI wizards:
- PdmProject
- Manages the overall tool project, including part selection, importing,
exporting, and more. It also represents the functionality of the Summary page
through class properties. To get a project object, call:
project_obj = new_project(...)orproject_obj = open_project(...). - PdmPowerDesign
- Focuses on designing power delivery strategies, allowing for detailed
configuration and management of power-related aspects. It corresponds to the
Power Design page. To get the power design object, call
pwr_design_obj = project_obj.get_power_design(). - PdmBlock
- Represents individual blocks within the tool, corresponding to all pages of the
Estimation section in the tool GUI. It enables detailed block-level management
and configuration. To get the list of available block names, call
project_obj.block_names, then callblock_obj = project_obj.get_block(...)to get an individual block object. - PdmSummary
- Provides individual block power and resource summary information. It corresponds
to all Summary, Power, Utilization, and other reporting tables in each
estimation page in the tool GUI. To get the list of available summary names in a
block, call
block_obj.summary_names, then callsum_obj = block_obj.get_summary(...)to get an individual summary object. Similarly, to get the list of available project summaries, callproject_obj.summary_names, then callproj_sum_obj = project_obj.get_summary(...)to get an individual project summary object. - PdmResource
- Manages resources within each individual block object. It represents each
configuration, settings, customization, and other similar table in all
estimation pages in the tool GUI. To get the list of available resource names,
call
block_obj.resource_names, then callres_obj = block_obj.get_resource(...)to get an individual resource object. - PdmClockHandler
- Manages clock creation, editing, and deletion. A special settings dictionary is
defined for clock settings handling, corresponding to the clock wizard’s clock
section in the tool GUI. To get the single clock handler object, call
clk_obj = project_obj.get_clock_handler(), then callclk_obj.namesto list names of clocks created in the current project. - PdmClockMgrHandler
- Manages clock manager creation, editing, and deletion. A special settings
dictionary is defined for clock manager settings handling, corresponding to the
clock wizard’s clock manager section in the tool GUI. To get the single clock
manager handler object, call
clk_mgr_obj = project_obj.get_clock_mgr_handler(). To list the clock manager types available in the current project, callclk_mgr_obj.types. To list the names of clock managers created in the current project, callclk_mgr_obj.names. - PdmIpHandler
- Manages the creation, editing, and deletion of IP of specified types. A special
settings dictionary is defined for each IP type settings handling, corresponding
to the IP wizard in the tool GUI. To get the list of IP types available in the
current project, call
project_obj.ip_types. To get the unique IP handler object of a given type, callip_obj = project_obj.get_ip_handler(...), then callip_obj.namesto list names of IPs of the given type created in the current project.
All properties and methods of the corresponding classes are described in detail in this chapter.