diff --git a/2025R1_Test/sherlock-split-files/Scalar_Value_Types.md b/2025R1_Test/sherlock-split-files/Scalar_Value_Types.md new file mode 100644 index 0000000000..bf95515be9 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/Scalar_Value_Types.md @@ -0,0 +1,20 @@ +# Scalar Value Types + +| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby | +| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- | +| double | | double | double | float | float64 | double | float | Float | +| float | | float | float | float | float32 | float | float | Float | +| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) | +| uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) | +| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) | +| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum | +| sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | +| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) | +| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) | + diff --git a/2025R1_Test/sherlock-split-files/SherlockAnalysisService.proto.md b/2025R1_Test/sherlock-split-files/SherlockAnalysisService.proto.md new file mode 100644 index 0000000000..c3a864db7a --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockAnalysisService.proto.md @@ -0,0 +1,824 @@ +# SherlockAnalysisService.proto + +@Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## GetHarmonicVibeInputFieldsRequest + +Request to list the valid Harmonic Vibe input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +## GetHarmonicVibeInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Harmonic Vibe input fields. | + + + + + + + + +## GetICTAnalysisInputFieldsRequest + +Request to list the valid ICT analysis input fields given the user configuration. + + + + + + + + +## GetICTAnalysisInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of ICT Analysis input fields. | + + + + + + + + +## GetMechanicalShockInputFieldsRequest + +Request to list the valid mechanical shock input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +## GetMechanicalShockInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Mechanical Shock input fields for a model source. | + + + + + + + + +## GetNaturalFrequencyInputFieldsRequest + +Request to list the valid natural frequency input fields given the user configuration. + + + + + + + + +## GetNaturalFrequencyInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Natural Frequency input fields. | + + + + + + + + +## GetPcbModelingInputFieldsRequest + +Request to list the valid PCB Modeling input fields given the user configuration. + + + + + + + + +## GetPcbModelingInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Pcb Modeling input fields. | + + + + + + + + +## GetRandomVibeInputFieldsRequest + +Request to list the valid random vibe input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +## GetRandomVibeInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Random Vibe input fields. | + + + + + + + + +## GetSolderFatigueInputFieldsRequest + +Request to list the valid solder fatigue input fields given the user configuration. + + + + + + + + +## GetSolderFatigueInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Solder Fatigue input fields. | + + + + + + + + +## RunAnalysisRequest + +Request to run one or more Sherlock analysis given the project path, CCA name, analyses, lifecycle phases and events. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| analyses | [RunAnalysisRequest.Analysis](#RunAnalysisRequest-Analysis) | repeated | List of Analyses to run. | + + + + + + + + +## RunAnalysisRequest.Analysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [RunAnalysisRequest.Analysis.AnalysisType](#RunAnalysisRequest-Analysis-AnalysisType) | | Type of Analysis to run. | +| phases | [RunAnalysisRequest.Analysis.Phase](#RunAnalysisRequest-Analysis-Phase) | repeated | List of Phases for each Analysis to run. | + + + + + + + + +## RunAnalysisRequest.Analysis.Phase + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle phase name. | +| events | [RunAnalysisRequest.Analysis.Phase.Event](#RunAnalysisRequest-Analysis-Phase-Event) | repeated | List of life cycle Events. | + + + + + + + + +## RunAnalysisRequest.Analysis.Phase.Event + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle event name. | + + + + + + + + +## RunStrainMapAnalysisRequest + +Request to run Sherlock strain map analysis given the project name, CCA name, and strain maps. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name of the main CCA for the analysis. | +| strainMapAnalyses | [RunStrainMapAnalysisRequest.StrainMapAnalysis](#RunStrainMapAnalysisRequest-StrainMapAnalysis) | repeated | List of Strain Map Analyses to run. | + + + + + + + + +## RunStrainMapAnalysisRequest.StrainMapAnalysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [RunStrainMapAnalysisRequest.StrainMapAnalysis.AnalysisType](#RunStrainMapAnalysisRequest-StrainMapAnalysis-AnalysisType) | | Type of Strain Map analysis to run. | +| eventStrainMaps | [RunStrainMapAnalysisRequest.StrainMapAnalysis.EventStrainMap](#RunStrainMapAnalysisRequest-StrainMapAnalysis-EventStrainMap) | repeated | List of Strain Map events to run. | + + + + + + + + +## RunStrainMapAnalysisRequest.StrainMapAnalysis.EventStrainMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | Life cycle phase name. | +| eventName | [string](#string) | | Life cycle event name. | +| pcbSide | [string](#string) | | PCB side for the strain map. Supported values are: TOP, BOTTOM. | +| strainMap | [string](#string) | | Strain map assigned to the event. | +| subAssemblyName | [string](#string) | optional | The name of the sub-assembly CCA to be assigned the strain map. | + + + + + + + + +## UpdateHarmonicVibePropsRequest + +Request to update the harmonic vibe analysis properties for one or more CCA's +in the project indicated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| harmonicVibeProperties | [UpdateHarmonicVibePropsRequest.HarmonicVibe](#UpdateHarmonicVibePropsRequest-HarmonicVibe) | repeated | List of HarmonicVibe analysis properties to update. | + + + + + + + + +## UpdateHarmonicVibePropsRequest.HarmonicVibe + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | CCA name for which the harmonic vibe properties are set. | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | +| harmonicVibeCount | [int32](#int32) | optional | Number of harmonic result layers to generate. | +| harmonicVibeDamping | [string](#string) | optional | Modal Damping Ratio(s). | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| filterByEventFrequency | [bool](#bool) | optional | Flag indicating if harmonic results outside selected event range are imported. | +| naturalFreqMin | [uint32](#uint32) | optional | Min Frequency. For NX Nastran analysis only. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. For NX Nastran analysis only. | +| naturalFreqMax | [uint32](#uint32) | optional | Max Frequency. For NX Nastran analysis only. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. For NX Nastran analysis only. | +| reuseModalAnalysis | [bool](#bool) | optional | Reuse Natural Frequency. For NX Nastran analysis only. | + + + + + + + + +## UpdateICTAnalysisPropsRequest + +Request to update ICT Analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| ictAnalysisProperties | [UpdateICTAnalysisPropsRequest.ICTAnalysis](#UpdateICTAnalysisPropsRequest-ICTAnalysis) | repeated | List of ICTAnalysis properties to update for each CCA in a project. | + + + + + + + + +## UpdateICTAnalysisPropsRequest.ICTAnalysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| applicationTime | [double](#double) | optional | Application Time. | +| applicationTimeUnits | [string](#string) | optional | Application Time Units. | +| numberOfEvents | [uint32](#uint32) | optional | Number of Events. | +| partValidationEnabled | [bool](#bool) | optional | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| ictResultCount | [int32](#int32) | optional | Number of ICT layers to generate when using thermal analysis. | + + + + + + + + +## UpdateMechanicalShockPropsRequest + +Request to update the mechanical shock analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| mechanicalShockProperties | [UpdateMechanicalShockPropsRequest.MechanicalShock](#UpdateMechanicalShockPropsRequest-MechanicalShock) | repeated | List of MechanicalShock properties to update. | + + + + + + + + +## UpdateMechanicalShockPropsRequest.MechanicalShock + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| modelSource | [ModelSource](#ModelSource) | optional | Default is GENERATED. | +| shockResultCount | [int32](#int32) | optional | Mechanical Shock Result Count. | +| criticalShockStrain | [double](#double) | optional | Critical Shock Strain. | +| criticalShockStrainUnits | [string](#string) | optional | Critical Shock Strain units. | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| naturalFreqMin | [uint32](#uint32) | optional | Min Frequency. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. | +| naturalFreqMax | [uint32](#uint32) | optional | Max Frequency. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | + + + + + + + + +## UpdateNaturalFrequencyPropsRequest + +Request to update natural frequency analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | | CCA name. | +| naturalFreqCount | [int32](#int32) | | NF Result Count. | +| naturalFreqMin | [double](#double) | | Min Frequency. | +| naturalFreqMinUnits | [string](#string) | | Min Frequency units (HZ, KHZ, MHZ, or GHZ). | +| naturalFreqMax | [double](#double) | | Max Frequency. | +| naturalFreqMaxUnits | [string](#string) | | Max Frequency units (HZ, KHZ, MHZ, or GHZ). | +| partValidationEnabled | [bool](#bool) | | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | | Require Material Assignment. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units (C, F, or K). | + + + + + + + + +## UpdatePartModelingRequest + +Request to update FEA part modeling properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partEnabled | [bool](#bool) | | Whether to enable part modeling. Ignores all other fields if part modeling is disabled. | +| partMinSize | [double](#double) | optional | The minimum part size. | +| partMinSizeUnits | [string](#string) | optional | Units for minimum part size. | +| partElemOrder | [string](#string) | optional | Element order. | +| partMaxEdgeLength | [double](#double) | optional | Maximum mesh size. | +| partMaxEdgeLengthUnits | [string](#string) | optional | Units for maximum mesh size. | +| partMaxVertical | [double](#double) | optional | Vertical mesh size. | +| partMaxVerticalUnits | [string](#string) | optional | Units for vertical mesh size. | +| partResultsFiltered | [bool](#bool) | optional | Whether to enable filtered part results. | + + + + + + + + +## UpdatePartsListValidationPropsRequest + +Request to update the Parts List Validation properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| partsListValidationProperties | [UpdatePartsListValidationPropsRequest.PartsListValidation](#UpdatePartsListValidationPropsRequest-PartsListValidation) | repeated | Properties for each CCA in the project. | + + + + + + + + +## UpdatePartsListValidationPropsRequest.PartsListValidation + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| partLibrary | [string](#string) | optional | Part library name. | +| processUseAVL | [bool](#bool) | optional | Process option to use AVL. | +| processUseWizard | [bool](#bool) | optional | Process option to use Wizard. | +| processCheckConfirmedProperties | [bool](#bool) | optional | Process option to check confirmed properties. | +| processCheckPartNumbers | [bool](#bool) | optional | Process option to check part numbers. | +| matching | [MatchingMode](#MatchingMode) | optional | Matching type. | +| avlRequireInternalPartNumber | [bool](#bool) | optional | AVL require internal part number. | +| avlRequireApprovedDescription | [bool](#bool) | optional | AVL require approved description. | +| avlRequireApprovedManufacturer | [bool](#bool) | optional | AVL require approved manufacturer. | + + + + + + + + +## UpdatePcbModelingPropsRequest + +Request to update FEA analysis PCB Modeling properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaNames | [string](#string) | repeated | The CCA names for which to assign the PCB modeling parameters. | +| analyses | [UpdatePcbModelingPropsRequest.Analysis](#UpdatePcbModelingPropsRequest-Analysis) | repeated | List of Analysis message types. | + + + + + + + + +## UpdatePcbModelingPropsRequest.Analysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [UpdatePcbModelingPropsRequest.Analysis.AnalysisType](#UpdatePcbModelingPropsRequest-Analysis-AnalysisType) | | The type of analysis for which PCB modeling properties apply. | +| modelType | [UpdatePcbModelingPropsRequest.Analysis.PcbModelType](#UpdatePcbModelingPropsRequest-Analysis-PcbModelType) | | The PCB modeling mesh type. | +| modelingRegionEnabled | [bool](#bool) | | Indicates if modeling regions are enabled. | +| pcbMaterialModel | [UpdatePcbModelingPropsRequest.Analysis.PcbMaterialModel](#UpdatePcbModelingPropsRequest-Analysis-PcbMaterialModel) | | The PCB modeling PCB model type. | +| pcbMaxMaterials | [int32](#int32) | optional | The number of PCB materials for Uniform Elements and Layered Elements PCB model types. | +| pcbElemOrder | [ElementOrder](#ElementOrder) | | The element order for PCB elements. | +| pcbMaxEdgeLength | [double](#double) | | The maximum mesh size for PCB elements. | +| pcbMaxEdgeLengthUnits | [string](#string) | | The length units for the maximum mesh size. | +| pcbMaxVertical | [double](#double) | | The maximum vertical mesh size for PCB elements. | +| pcbMaxVerticalUnits | [string](#string) | | The length units for the maximum vertical mesh size. | +| quadsPreferred | [bool](#bool) | | Indicates that the meshing engine should attempt to generate quad-shaped elements when creating the mesh. | + + + + + + + + +## UpdateRandomVibePropsRequest + +Request to update random vibe analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | | CCA name. | +| randomVibeDamping | [string](#string) | optional | Modal Damping Ratio(s). | +| naturalFreqMin | [double](#double) | optional | Min Frequency. For NX Nastran analysis only. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. For NX Nastran analysis only. | +| naturalFreqMax | [double](#double) | optional | Max Frequency. For NX Nastran analysis only. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. For NX Nastran analysis only. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | +| partValidationEnabled | [bool](#bool) | optional | Part Validation. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| reuseModalAnalysis | [bool](#bool) | optional | Reuse Natural Frequency. For NX Nastran analysis only. | +| performNFFreqRangeCheck | [bool](#bool) | optional | Frequency Range Check. For NX Nastran analysis only. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Require Material Assignment. | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | +| strainMapNaturalFreqs | [string](#string) | optional | Comma-separated list of natural frequencies for strain map analysis. | + + + + + + + + +## UpdateSolderFatiguePropsRequest + +Request to update solder fatigue properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| solderFatigueProperties | [UpdateSolderFatiguePropsRequest.SolderFatigue](#UpdateSolderFatiguePropsRequest-SolderFatigue) | repeated | List of SolderFatigue properties to update for a CCA. | + + + + + + + + +## UpdateSolderFatiguePropsRequest.SolderFatigue + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| solderMaterial | [string](#string) | optional | Name of the solder material. | +| partTemp | [double](#double) | optional | Part temperature rise. | +| partTempUnits | [string](#string) | optional | Part temperature rise units. | +| partTempRiseMinEnabled | [bool](#bool) | optional | Flag indicating if part temperature minimum rise should be enabled. | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | + + + + + + + + +## UpdateThermalMechPropsRequest + +Request to update thermal mech analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | repeated | CCA names. | +| thermalResultCount | [int32](#int32) | | Thermal Mech Result Count. | +| partValidationEnabled | [bool](#bool) | | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | | Require Material Assignment. | + + + + + + + + + + +## ElementOrder + +Enumeration defining the types of supported element orders. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownOrder | 0 | Default enum to catch invalid element order. | +| Linear | 1 | Enum for first order linear elements. | +| Quadratic | 2 | Enum for second order quadratic elements. | +| SolidShell | 3 | Enum for solid shell elements. | + + + + + +## ModelSource + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid source. | +| GENERATED | 1 | Generated analysis model source. | +| STRAIN_MAP | 2 | Strain map analysis model source. | + + + + + +## RunAnalysisRequest.Analysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid analysis. | +| NaturalFreq | 1 | Enum for the Natural Frequency analysis. | +| HarmonicVibe | 2 | Enum for the Harmonic Vibe analysis. | +| ICTAnalysis | 3 | Enum for the ICT analysis. | +| MechanicalShock | 4 | Enum for the Mechanical Shock analysis. | +| RandomVibe | 5 | Enum for the Random Vibe analysis. | +| ComponentFailureMode | 7 | Enum for the Component Failure Mechanism analysis. | +| DFMEAModule | 8 | Enum for the DFMEA analysis. | +| PTHFatigue | 9 | Enum for the PTH Fatigue analysis. | +| PartValidation | 10 | Enum for the Part Validation analysis. | +| SemiconductorWearout | 11 | Enum for the Semiconductor Wearout analysis. | +| SolderJointFatigue | 12 | Enum for the Solder Fatigue analysis. | +| ThermalDerating | 13 | Enum for the Thermal Derating analysis. | +| ThermalMech | 14 | Enum for the Thermal Mech analysis. | + + + + + +## RunStrainMapAnalysisRequest.StrainMapAnalysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid analysis. | +| RandomVibe | 1 | Enum for the Random Vibe analysis. | +| MechanicalShock | 2 | Enum for Mechanical Shock analysis. | + + + + + +## UpdatePcbModelingPropsRequest.Analysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownAnalysisType | 0 | Default enum to catch invalid analysis. | +| HarmonicVibe | 1 | Enum for the Harmonic Vibe analysis. | +| ICTAnalysis | 2 | Enum for the ICT analysis. | +| MechanicalShock | 3 | Enum for the Mechanical Shock analysis. | +| NaturalFreq | 4 | Enum for the Natural Frequency analysis. | +| RandomVibe | 5 | Enum for the Random Vibe analysis. | +| ThermalMech | 6 | Enum for the Thermal Mech analysis. | + + + + + +## UpdatePcbModelingPropsRequest.Analysis.PcbMaterialModel + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownPcbModel | 0 | Default enum to catch invalid PCB model. | +| Uniform | 1 | Enum for uniform PCB model. | +| Layered | 2 | Enum for layered PCB model. | +| UniformElements | 3 | Enum for uniform elements PCB model. | +| LayeredElements | 4 | Enum for layered elements PCB model. | + + + + + +## UpdatePcbModelingPropsRequest.Analysis.PcbModelType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownMeshType | 0 | Default enum to catch invalid mesh type. | +| Bonded | 1 | Bonded FEA model. | + + + + + + + + + +## SherlockAnalysisService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| runAnalysis | [.RunAnalysisRequest](#RunAnalysisRequest) | [.ReturnCode](#ReturnCode) | Runs one or more Sherlock analysis. | +| runStrainMapAnalysis | [.RunStrainMapAnalysisRequest](#RunStrainMapAnalysisRequest) | [.ReturnCode](#ReturnCode) | Run Sherlock strain map analysis. | +| getHarmonicVibeInputFields | [.GetHarmonicVibeInputFieldsRequest](#GetHarmonicVibeInputFieldsRequest) | [.GetHarmonicVibeInputFieldsResponse](#GetHarmonicVibeInputFieldsResponse) | Returns the list of valid harmonic vibe input fields for the provided model source and user configuration. | +| updateHarmonicVibeProps | [.UpdateHarmonicVibePropsRequest](#UpdateHarmonicVibePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for harmonic vibe analysis. | +| getRandomVibeInputFields | [.GetRandomVibeInputFieldsRequest](#GetRandomVibeInputFieldsRequest) | [.GetRandomVibeInputFieldsResponse](#GetRandomVibeInputFieldsResponse) | Returns the list of valid Random Vibe input fields for the provided model source and user configuration. | +| updateRandomVibeProps | [.UpdateRandomVibePropsRequest](#UpdateRandomVibePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for random vibe analysis. | +| getMechanicalShockInputFields | [.GetMechanicalShockInputFieldsRequest](#GetMechanicalShockInputFieldsRequest) | [.GetMechanicalShockInputFieldsResponse](#GetMechanicalShockInputFieldsResponse) | Returns the list of valid mechanical shock input fields for the provided model source and user configuration. | +| updateMechanicalShockProps | [.UpdateMechanicalShockPropsRequest](#UpdateMechanicalShockPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for mechanical shock analysis. | +| updateSolderFatigueProps | [.UpdateSolderFatiguePropsRequest](#UpdateSolderFatiguePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for solder fatigue analysis. | +| getNaturalFrequencyInputFields | [.GetNaturalFrequencyInputFieldsRequest](#GetNaturalFrequencyInputFieldsRequest) | [.GetNaturalFrequencyInputFieldsResponse](#GetNaturalFrequencyInputFieldsResponse) | Returns the list of valid natural frequency property fields given the user configuration. | +| updateNaturalFrequencyProps | [.UpdateNaturalFrequencyPropsRequest](#UpdateNaturalFrequencyPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for natural frequency analysis. | +| updateThermalMechProps | [.UpdateThermalMechPropsRequest](#UpdateThermalMechPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for thermal mech analysis. | +| getPcbModelingInputFields | [.GetPcbModelingInputFieldsRequest](#GetPcbModelingInputFieldsRequest) | [.GetPcbModelingInputFieldsResponse](#GetPcbModelingInputFieldsResponse) | Returns the list of valid PCB modeling property field. | +| updatePcbModelingProps | [.UpdatePcbModelingPropsRequest](#UpdatePcbModelingPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the PCB modeling properties for the provided analysis types. | +| getSolderFatigueInputFields | [.GetSolderFatigueInputFieldsRequest](#GetSolderFatigueInputFieldsRequest) | [.GetSolderFatigueInputFieldsResponse](#GetSolderFatigueInputFieldsResponse) | Returns the list of valid solder fatigue property fields given the user configuration. | +| updatePartModelingProperties | [.UpdatePartModelingRequest](#UpdatePartModelingRequest) | [.ReturnCode](#ReturnCode) | Updates the part modeling properties for a given project's CCA. | +| getICTAnalysisInputFields | [.GetICTAnalysisInputFieldsRequest](#GetICTAnalysisInputFieldsRequest) | [.GetICTAnalysisInputFieldsResponse](#GetICTAnalysisInputFieldsResponse) | Returns the list of valid ICT analysis property fields given the user configuration. | +| updateICTAnalysisProps | [.UpdateICTAnalysisPropsRequest](#UpdateICTAnalysisPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for ICT analysis. | +| updatePartsListValidationProps | [.UpdatePartsListValidationPropsRequest](#UpdatePartsListValidationPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for part list validation analysis. | + + + + + + +
+ diff --git a/2025R1_Test/sherlock-split-files/SherlockCommonService.proto.md b/2025R1_Test/sherlock-split-files/SherlockCommonService.proto.md new file mode 100644 index 0000000000..c1bc6c321d --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockCommonService.proto.md @@ -0,0 +1,291 @@ +# SherlockCommonService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## ExitRequest + +Request to exit the gRPC connection. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| closeSherlockClient | [bool](#bool) | | If set to true, exits the Sherlock client if it is opened. Otherwise, just closes the gRPC connection. | + + + + + + + + +## GetSoldersRequest + +Request for a list of valid solder materials. + + + + + + + + +## GetSoldersResponse + +Represents a list of valid solder materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| solderName | [string](#string) | repeated | List of valid solder materials. | + + + + + + + + +## HealthCheckRequest + +Request to check if the gRPC connection is open. + + + + + + + + +## HealthCheckResponse + +Represents whether the gRPC connection is open. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| status | [HealthCheckResponse.ServingStatus](#HealthCheckResponse-ServingStatus) | | Enum representing connection status. | +| port | [int32](#int32) | | Listening port number on server. | + + + + + + + + +## IsSherlockClientLoadingRequest + +Check if the Sherlock client is still loading. + + + + + + + + +## ListUnitsRequest + +Request for a list of valid units of the provided unit type. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| unitType | [ListUnitsRequest.UnitType](#ListUnitsRequest-UnitType) | | Unit type to request valid units of. | + + + + + + + + +## ListUnitsResponse + +Represents a list of valid units for the provided unit type. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | List of valid units for the requested type. | + + + + + + + + +## Measurement + +Represents a common measurement with a value and a unit + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Numerical value of a measurement. | +| units | [string](#string) | | Units of the numerical value. | + + + + + + + + +## ReturnCode + +Status response of a message. A value of 0 indicates a successful request. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [int32](#int32) | | Status code of response. A value of 0 indicates success, -1 indicates error. | +| message | [string](#string) | | Message indicating the status of response including any error. | + + + + + + + + +## SherlockInfoRequest + +Request to receive Sherlock version and configuration data. + + + + + + + + +## SherlockInfoResponse + +Represents Sherlock version and configuration data. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| releaseVersion | [string](#string) | | The current version of Sherlock, formatted as: YYYY R# (Ex. "2025 R1") | +| defaultProjectDir | [string](#string) | | The project directory currently used by Sherlock. | +| isSingleProjectMode | [bool](#bool) | | When true, indicates that Sherlock is in single-project mode. When false, indicates that Sherlock is in multi-project mode. | + + + + + + + + + + +## HealthCheckResponse.ServingStatus + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Indicates an unknown connection status. | +| SERVING | 1 | Indicates the connection is up and server is listening. | +| NOT_SERVING | 2 | Indicates connection with server is closed. | + + + + + +## ListUnitsRequest.UnitType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Indicates an unknown unit type. | +| ACCEL_DENSITY | 1 | Units used for acceleration density. | +| ACCELERATION | 2 | Units used for acceleration. | +| AREA | 3 | Units used for area. | +| BANDWIDTH | 4 | Units used for bandwidth. | +| CAPACITANCE | 5 | Units used for electrical capacitance. | +| CTE | 6 | Units used for material CTE. | +| CURRENT | 7 | Units used for electrical current. | +| DENSITY | 8 | Units used for density. | +| DISP_DENSITY | 9 | Units used for displacement density. | +| FORCE | 10 | Units used for force. | +| FREQUENCY | 11 | Units used for frequency. | +| INDUCTANCE | 12 | Units used for inductance. | +| LENGTH | 13 | Units used for length. | +| POWER | 14 | Units used for electrical power. | +| RESISTANCE | 15 | Units used for electrical resistance. | +| SIZE | 16 | Units used for size. | +| SPECIFIC_HEAT | 17 | Units used for specific heat. | +| STRAIN | 18 | Units used for strain. | +| STRESS | 19 | Units used for stress. | +| TEMPERATURE | 20 | Units used for temperature. | +| THERMAL_CONDUCTIVITY | 21 | Units used for thermal conductivity. | +| THERMAL_RESISTANCE | 22 | Units used for thermal resistance. | +| TIME | 23 | Units used for time. | +| VELOCITY | 24 | Units used for velocity. | +| VELOCITY_DENSITY | 25 | Units used for velocity density. | +| VOLTAGE | 26 | Units used for electrical voltage. | +| VOLUME | 27 | Units used for volume. | +| WEIGHT | 28 | Units used for weight. | + + + + + +## MatchingMode + +Determines how parts in the parts list are matched against parts +in the AVL or Part Library. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Both | 0 | Matches both part number and manufacturer. | +| Part | 1 | Matches part number only. | + + + + + +## TableDelimiter + +Types of delimiters that can be used for exporting tables + +| Name | Number | Description | +| ---- | ------ | ----------- | +| COMMA | 0 | Represents ',' delimiter. | +| SPACE | 1 | Represents ' ' delimiter. | +| TAB | 2 | Represents tab key delimiter. | +| SEMICOLON | 3 | Represents ';' delimiter. | + + + + + + + + + +## SherlockCommonService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| check | [.HealthCheckRequest](#HealthCheckRequest) | [.HealthCheckResponse](#HealthCheckResponse) | Returns health status of gRPC server. | +| exit | [.ExitRequest](#ExitRequest) | [.ReturnCode](#ReturnCode) | Signals for gRPC connection to shutdown. | +| isSherlockClientLoading | [.IsSherlockClientLoadingRequest](#IsSherlockClientLoadingRequest) | [.ReturnCode](#ReturnCode) | Check if the Sherlock client is still loading. | +| listUnits | [.ListUnitsRequest](#ListUnitsRequest) | [.ListUnitsResponse](#ListUnitsResponse) | Returns a list of valid units of the provided unit type. | +| getSolders | [.GetSoldersRequest](#GetSoldersRequest) | [.GetSoldersResponse](#GetSoldersResponse) | Returns a list of valid solder materials. | +| getSherlockInfo | [.SherlockInfoRequest](#SherlockInfoRequest) | [.SherlockInfoResponse](#SherlockInfoResponse) | Returns meta data about Sherlock. | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockLayerService.proto.md b/2025R1_Test/sherlock-split-files/SherlockLayerService.proto.md new file mode 100644 index 0000000000..2d54dd0105 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockLayerService.proto.md @@ -0,0 +1,884 @@ +# SherlockLayerService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## AddModelingRegionRequest + +Request to add one or more modeling regions to a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project to add the modeling regions to. | +| modelingRegions | [ModelingRegion](#ModelingRegion) | repeated | List of modeling regions to add to the project. | + + + + + + + + +## AddPottingRegionRequest + +Request to add a potting region. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project to add the potting regions to. | +| pottingRegions | [AddPottingRegionRequest.PottingRegion](#AddPottingRegionRequest-PottingRegion) | repeated | The potting regions to add. | + + + + + + + + +## AddPottingRegionRequest.PottingRegion + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The name of the CCA. | +| pottingID | [string](#string) | optional | The potting ID, must be unique. | +| pottingSide | [string](#string) | optional | The potting side, options are "TOP", "BOT", or "BOTTOM". | +| pottingMaterial | [string](#string) | optional | The potting material. | +| pottingUnits | [string](#string) | optional | The units to use for the potting region. | +| pottingThickness | [double](#double) | optional | The potting thickness. | +| pottingStandoff | [double](#double) | optional | The potting standoff. | +| polygonalShape | [PolygonalShape](#PolygonalShape) | | Used to add a region with a polygonal shape. | +| rectangularShape | [RectangularShape](#RectangularShape) | | Used to add a region with a rectangular shape. | +| slotShape | [SlotShape](#SlotShape) | | Used to add a region with a slot shape. | +| circularShape | [CircularShape](#CircularShape) | | Used to add a region with a circular shape. | +| pCBShape | [PCBShape](#PCBShape) | | Used to add a region with a PCB shape. | + + + + + + + + +## CircularShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| diameter | [double](#double) | optional | The diameter of the circle. | +| nodeCount | [uint32](#uint32) | optional | The number of nodes. | +| centerX | [double](#double) | optional | The x coordinate of the center of the circle. | +| centerY | [double](#double) | optional | The x coordinate of the center of the circle. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +## CopyModelingRegionRequest + +Request to copy one or more modeling regions in a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| copyRegions | [CopyModelingRegionRequest.CopyModelingRegionInfo](#CopyModelingRegionRequest-CopyModelingRegionInfo) | repeated | List of modeling regions to copy along with their corresponding "copy to" parameters. | + + + + + + + + +## CopyModelingRegionRequest.CopyModelingRegionInfo + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| regionId | [string](#string) | | Region ID of the existing modeling region to copy. | +| regionIdCopy | [string](#string) | | Region ID of the modeling region copy. Must be unique. | +| centerX | [double](#double) | | The center x coordinate of the modeling region copy -- used for location placement in the Layer Viewer. | +| centerY | [double](#double) | | The center y coordinate of the modeling region copy -- used for location placement in the Layer Viewer. | + + + + + + + + +## DeleteAllICTFixturesRequest + +Request to delete all ICT fixtures in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +## DeleteAllMountPointsRequest + +Request to delete all mount points in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +## DeleteAllTestPointsRequest + +Request to delete all ICT fixtures in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +## DeleteModelingRegionRequest + +Request to delete one or more modeling regions for a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| deleteRegions | [DeleteModelingRegionRequest.DeleteModelingRegionInfo](#DeleteModelingRegionRequest-DeleteModelingRegionInfo) | repeated | List of modeling regions to delete in the project. | + + + + + + + + +## DeleteModelingRegionRequest.DeleteModelingRegionInfo + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| regionId | [string](#string) | | Unique region ID of the modeling region to delete. | + + + + + + + + +## ExportAllICTFixturesRequest + +Request to export all ICT fixtures and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| units | [string](#string) | | Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +## ExportAllMountPointsRequest + +Request to export all mount points and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| units | [string](#string) | | Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +## ExportAllTestPointsRequest + +Request to export all test points and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| lengthUnits | [string](#string) | | Length Units used in exporting. | +| displacementUnits | [string](#string) | | Displacement Units used in exporting. | +| forceUnits | [string](#string) | | Force Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +## GetMountPointBoundariesRequest + +Request to list the valid mount point boundaries. + + + + + + + + +## GetMountPointBoundariesResponse + +Represents a list of valid mount point boundaries. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boundary | [string](#string) | repeated | Mount Point boundary. | + + + + + + + + +## GetMountPointChassisMaterialsRequest + +Request to list the valid mount point chassis materials. + + + + + + + + +## GetMountPointChassisMaterialsResponse + +Represents a list of valid mount point chassis materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| chassisMaterial | [string](#string) | repeated | Mount Point chassis material. | + + + + + + + + +## GetMountPointShapeTypesRequest + +Request to list the valid mount point shape types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| mountPointType | [string](#string) | | Mount Point Type. Supported values are: Mount Hole, Mount Pad, Standoff, and Support Pin. | + + + + + + + + +## GetMountPointShapeTypesResponse + +Represents a list of valid mount point shape types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| type | [string](#string) | repeated | Mount Point Shape Type. | + + + + + + + + +## GetMountPointSidesRequest + +Request to list the valid mount point sides. + + + + + + + + +## GetMountPointSidesResponse + +Represents a list of valid mount point sides. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| side | [string](#string) | repeated | Mount Point side. | + + + + + + + + +## GetMountPointTypesRequest + +Request to list the valid mount point types. + + + + + + + + +## GetMountPointTypesResponse + +Represents a list of valid mount point types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| type | [string](#string) | repeated | Mount Point Type. | + + + + + + + + +## GetMountPointUnitsRequest + +Request to list the valid mount point units. + + + + + + + + +## GetMountPointUnitsResponse + +Represents a list of valid mount point units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | Mount Point units. | + + + + + + + + +## GetMountPointsPropertiesRequest + +Request to list the valid mount point chassis materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| mountPointIDs | [string](#string) | | A comma separated list of mount point id for a list of mount point, or a mount id for one part. | + + + + + + + + +## GetMountPointsPropertiesResponse + +Represents a list of valid mount point properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| mountPointsProperties | [MountPointProperties](#MountPointProperties) | repeated | Mount point properties. | + + + + + + + + +## ModelingRegion + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | optional | Name of the CCA. | +| regionId | [string](#string) | optional | Unique modeling region ID. | +| regionUnits | [string](#string) | optional | Modeling region units. | +| modelMode | [ModelingRegion.ModelingMode](#ModelingRegion-ModelingMode) | optional | Mode that specified how the region is used. | +| polygonalShape | [PolygonalShape](#PolygonalShape) | | Defined by N points that form a convex polygon. | +| rectangularShape | [RectangularShape](#RectangularShape) | | Defined by 4 points that form a rectangle. | +| slotShape | [SlotShape](#SlotShape) | | Defined by 8 points that form a rectangle with rounded ends. | +| circularShape | [CircularShape](#CircularShape) | | Defined by N points that form a circle. | +| pcbModelProps | [ModelingRegion.PCBModelingProperties](#ModelingRegion-PCBModelingProperties) | optional | Mesh properties for the modeling region. | +| traceModelProps | [ModelingRegion.TraceModelingProperties](#ModelingRegion-TraceModelingProperties) | optional | Trace modeling properties for the region. | +| regionIdReplacement | [string](#string) | optional | Represents a unique region id that will replace the existing regionId value during | + + + + + + + + +## ModelingRegion.PCBModelingProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportModelType | [ModelingRegion.PCBModelingProperties.ExportModelType](#ModelingRegion-PCBModelingProperties-ExportModelType) | | The type of model to be generated for a given modeling region. | +| elemOrder | [ModelingRegion.ElementOrder](#ModelingRegion-ElementOrder) | | The type of 3D elements to be created for the PCB in the modeling region. | +| maxMeshSize | [double](#double) | | The maximum size of the mesh to be used in the region. | +| maxMeshSizeUnits | [string](#string) | | Units for the maximum mesh size. | +| quadsPreferred | [bool](#bool) | | If true, then the meshing engine should attempt to generate quad-shaped elements when creating the mesh. | + + + + + + + + +## ModelingRegion.TraceModelingProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceModelType | [ModelingRegion.TraceModelingProperties.TraceModelingType](#ModelingRegion-TraceModelingProperties-TraceModelingType) | | Specifies if trace modeling should be performed inside of the region. | +| elemOrder | [ModelingRegion.ElementOrder](#ModelingRegion-ElementOrder) | optional | The type of 3D elements to be created for traces in the region when trace modeling is enabled. | +| traceMeshSize | [double](#double) | optional | The maximum mesh size to be used in the region when trace modeling is enabled. | +| traceMeshSizeUnits | [string](#string) | optional | Units for the maximum mesh size when trace modeling is enabled. | + + + + + + + + +## MountPointProperties + +Properties of mount point, the properties may varies from the mount point type and mount point shape. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ID | [string](#string) | | Mount point ID. | +| type | [string](#string) | | Mount point type. | +| shape | [string](#string) | | Shape type. | +| units | [string](#string) | | Mount point units. | +| x | [string](#string) | | Center X. | +| y | [string](#string) | | Center Y. | +| length | [string](#string) | | Length. | +| width | [string](#string) | | Width. | +| diameter | [string](#string) | | Diameter. | +| nodes | [string](#string) | | # of nodes. | +| rotation | [string](#string) | | Rotation in degrees. | +| side | [string](#string) | | Mount point side. | +| height | [string](#string) | | Mount point height. | +| material | [string](#string) | | Mount point material. | +| boundary | [string](#string) | | Boundary Pt(s). | +| constraints | [string](#string) | | FEA constraints. | +| polygon | [string](#string) | | Coordinates of points. | +| state | [string](#string) | | Mount point state. | +| chassisMaterial | [string](#string) | | Chassis material. | + + + + + + + + +## PCBShape + + + + + + + + + +## PolygonalShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| points | [PolygonalShape.Point](#PolygonalShape-Point) | repeated | The points used to define the polygonal shape, must be >= 3. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +## PolygonalShape.Point + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| x | [double](#double) | | The x coordinate of the point. | +| y | [double](#double) | | The y coordinate of the point. | + + + + + + + + +## RectangularShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| length | [double](#double) | optional | The length of the rectangle. | +| width | [double](#double) | optional | The width of the rectangle. | +| centerX | [double](#double) | optional | The x coordinate of the center of the rectangle. | +| centerY | [double](#double) | optional | The y coordinate of the center of the rectangle. | +| rotation | [double](#double) | optional | The rotation of the rectangle in degrees. | + + + + + + + + +## SlotShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| length | [double](#double) | optional | The length of the slot shape. | +| width | [double](#double) | optional | The width of the slot shape. | +| nodeCount | [uint32](#uint32) | optional | The number of nodes. | +| centerX | [double](#double) | optional | The x coordinate of the center of the slot shape. | +| centerY | [double](#double) | optional | The x coordinate of the center of the slot shape. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +## UpdateICTFixturesByFileRequest + +Request to update ICT fixtures properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the ICT fixtures properties. | + + + + + + + + +## UpdateICTFixturesResponse + +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | ICT fixtures update error messages. | + + + + + + + + +## UpdateModelingRegionRequest + +Request to update one or more modeling regions for a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| modelingRegions | [ModelingRegion](#ModelingRegion) | repeated | List of modeling regions to update in the project. The regionId for | + + + + + + + + +## UpdateMountPointsByFileRequest + +Request to update mount points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the mount points properties. | + + + + + + + + +## UpdateMountPointsRequest + +Request to update mount points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| mountPointsProperties | [MountPointProperties](#MountPointProperties) | repeated | Mount point properties. | + + + + + + + + +## UpdateMountPointsResponse + +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Mount Points update error messages. | + + + + + + + + +## UpdateTestPointsByFileRequest + +Request to update test points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the test points properties. | + + + + + + + + +## UpdateTestPointsResponse + +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Test Points update error messages. | + + + + + + + + + + +## ModelingRegion.ElementOrder + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| First_Order | 0 | First order (Linear) 3D elements should be created for the PCB in the modeling region. | +| Second_Order | 1 | Second order (Quadratic) 3D elements should be created for the PCB in the modeling region. | +| Solid_Shell | 2 | Used for relatively flat elements, like those found in a PCB layer to reduce modeling generation time. | + + + + + +## ModelingRegion.ModelingMode + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Enabled | 0 | Use the modeling region. | +| Disabled | 1 | Ignore the modeling region. | +| Excluded | 2 | Don't generate any elements for the region. | + + + + + +## ModelingRegion.PCBModelingProperties.ExportModelType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Default | 0 | Region type is based on the Mesh Type property defined in the PCB Modeling tab in the FEA Model Export dialog. | +| Sherlock | 1 | Use mesh elements generated by Sherlock to model the region. | +| Sweep | 2 | Use mesh elements generated by the FEA tool to model the region. | +| None | 3 | Define only geometric volumes for the region, without generating mesh elements. | + + + + + +## ModelingRegion.TraceModelingProperties.TraceModelingType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Default | 0 | Trace modeling type is based on the Trace Modeling property defined in the Trace Modeling tab in the FEA Model Export dialog. | +| Enabled | 1 | Trace modeling is enabled for this region. | +| Disabled | 2 | Trace modeling is disabled for this region. | + + + + + + + + + +## SherlockLayerService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| addPottingRegion | [.AddPottingRegionRequest](#AddPottingRegionRequest) | [.ReturnCode](#ReturnCode) | Add a potting region with the specified shape and properties. | +| deleteAllICTFixtures | [.DeleteAllICTFixturesRequest](#DeleteAllICTFixturesRequest) | [.ReturnCode](#ReturnCode) | Delete all ICT fixtures in specific CCA of specific project. | +| deleteAllMountPoints | [.DeleteAllMountPointsRequest](#DeleteAllMountPointsRequest) | [.ReturnCode](#ReturnCode) | Delete all mount points in specific CCA of specific project. | +| deleteAllTestPoints | [.DeleteAllTestPointsRequest](#DeleteAllTestPointsRequest) | [.ReturnCode](#ReturnCode) | Delete all test points in specific CCA of specific project. | +| exportAllMountPoints | [.ExportAllMountPointsRequest](#ExportAllMountPointsRequest) | [.ReturnCode](#ReturnCode) | Export all mount points and their properties into a CSV formatted file. | +| exportAllICTFixtures | [.ExportAllICTFixturesRequest](#ExportAllICTFixturesRequest) | [.ReturnCode](#ReturnCode) | Export all ICT fixtures and their properties into a CSV formatted file. | +| exportAllTestPoints | [.ExportAllTestPointsRequest](#ExportAllTestPointsRequest) | [.ReturnCode](#ReturnCode) | Export all test points and their properties into a CSV formatted file. | +| getMountPointBoundaries | [.GetMountPointBoundariesRequest](#GetMountPointBoundariesRequest) | [.GetMountPointBoundariesResponse](#GetMountPointBoundariesResponse) | Get a list of valid mount point boundaries. | +| getMountPointChassisMaterials | [.GetMountPointChassisMaterialsRequest](#GetMountPointChassisMaterialsRequest) | [.GetMountPointChassisMaterialsResponse](#GetMountPointChassisMaterialsResponse) | Get a list of valid mount point chassis materials. | +| getMountPointsProperties | [.GetMountPointsPropertiesRequest](#GetMountPointsPropertiesRequest) | [.GetMountPointsPropertiesResponse](#GetMountPointsPropertiesResponse) | Get a list of valid mount point properties. | +| getMountPointShapeTypes | [.GetMountPointShapeTypesRequest](#GetMountPointShapeTypesRequest) | [.GetMountPointShapeTypesResponse](#GetMountPointShapeTypesResponse) | Get a list of valid mount point shape type values. | +| getMountPointSides | [.GetMountPointSidesRequest](#GetMountPointSidesRequest) | [.GetMountPointSidesResponse](#GetMountPointSidesResponse) | Get a list of valid mount point sides. | +| getMountPointTypes | [.GetMountPointTypesRequest](#GetMountPointTypesRequest) | [.GetMountPointTypesResponse](#GetMountPointTypesResponse) | Get a list of valid mount point type values. | +| getMountPointUnits | [.GetMountPointUnitsRequest](#GetMountPointUnitsRequest) | [.GetMountPointUnitsResponse](#GetMountPointUnitsResponse) | Get a list of valid mount point units. | +| updateICTFixturesByFile | [.UpdateICTFixturesByFileRequest](#UpdateICTFixturesByFileRequest) | [.UpdateICTFixturesResponse](#UpdateICTFixturesResponse) | Update the ICT fixtures properties of a CCA from a CSV formatted file. This API could be used to add new ICT fixtures or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that ICT fixture will be updated. If the ID specified does not already exist, or if the field is empty, then a new ICT fixture will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export ICT Fixtures. | +| updateMountPoints | [.UpdateMountPointsRequest](#UpdateMountPointsRequest) | [.UpdateMountPointsResponse](#UpdateMountPointsResponse) | Update mount points with specified properties. | +| updateMountPointsByFile | [.UpdateMountPointsByFileRequest](#UpdateMountPointsByFileRequest) | [.UpdateMountPointsResponse](#UpdateMountPointsResponse) | Update the mount points properties of a CCA from a CSV formatted file. This API could be used to add new mount points or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that mount point will be updated. If the ID specified does not already exist, or if the field is empty, then a new mount point will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export Mount Points. | +| updateTestPointsByFile | [.UpdateTestPointsByFileRequest](#UpdateTestPointsByFileRequest) | [.UpdateTestPointsResponse](#UpdateTestPointsResponse) | Update the test points properties of a CCA from a CSV formatted file. This API could be used to add new test points or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that test point will be updated. If the ID specified does not already exist, or if the field is empty, then a new test point will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export Test Points. | +| addModelingRegion | [.AddModelingRegionRequest](#AddModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Add one or more modeling regions with the specified shapes and properties. | +| updateModelingRegion | [.UpdateModelingRegionRequest](#UpdateModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Update one or more modeling regions with the specified shapes and properties. | +| deleteModelingRegion | [.DeleteModelingRegionRequest](#DeleteModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Delete one or more existing modeling regions. | +| copyModelingRegion | [.CopyModelingRegionRequest](#CopyModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Copy one or more existing modeling regions. | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockLifeCycleService.proto.md b/2025R1_Test/sherlock-split-files/SherlockLifeCycleService.proto.md new file mode 100644 index 0000000000..560cbd981b --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockLifeCycleService.proto.md @@ -0,0 +1,1375 @@ +# SherlockLifeCycleService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## AddHarmonicEventRequest + +Request to define and add a new harmonic vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the harmonic event. | +| description | [string](#string) | | Description of the harmonic event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this harmonic event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| sweepRate | [double](#double) | | Sweep rate for the harmonic event | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: "30,15". | +| profileType | [string](#string) | | Harmonic load profile types. Example valid values are "Uniaxial" and "Triaxial". | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: "0,0,1". | + + + + + + + + +## AddHarmonicEventResponse + +Response from adding a harmonic vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddHarmonicVibeProfilesRequest + +Request to define and add new harmonic vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| harmonicVibeProfiles | [AddHarmonicVibeProfilesRequest.HarmonicVibeProfile](#AddHarmonicVibeProfilesRequest-HarmonicVibeProfile) | repeated | List of harmonic vibe life cycle event profiles for a specified project. | + + + + + + + + +## AddHarmonicVibeProfilesRequest.HarmonicVibeProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the harmonic event. | +| profileName | [string](#string) | | Name of the harmonic profile. | +| freqUnits | [string](#string) | | Frequency units. | +| loadUnits | [string](#string) | | Load units. | +| harmonicVibeProfileEntries | [AddHarmonicVibeProfilesRequest.HarmonicVibeProfile.Entry](#AddHarmonicVibeProfilesRequest-HarmonicVibeProfile-Entry) | repeated | List of frequency and load values for a harmonic vibe life cycle phase. | +| triaxialAxis | [string](#string) | | If the harmonic profile type is "Triaxial", the axis this profile should be assigned to. Valid values are: x, y, z. | + + + + + + + + +## AddHarmonicVibeProfilesRequest.HarmonicVibeProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| freq | [double](#double) | | Frequency. | +| load | [double](#double) | | Load. | + + + + + + + + +## AddHarmonicVibeProfilesResponse + +Response from adding harmonic vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddRandomVibeEventRequest + +Request to define and add a new random vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the random vibe event. | +| description | [string](#string) | | Description of the random vibe event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this random vibe event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: "30,15". | +| profileType | [string](#string) | | Random load profile type. Example valid value is "Uniaxial". | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: "0,0,1". | + + + + + + + + +## AddRandomVibeEventResponse + +Response from adding a random vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddRandomVibeProfilesRequest + +Request to define and add new random vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| randomVibeProfiles | [AddRandomVibeProfilesRequest.RandomVibeProfile](#AddRandomVibeProfilesRequest-RandomVibeProfile) | repeated | List of random vibe life cycle event profiles for a specified project. | + + + + + + + + +## AddRandomVibeProfilesRequest.RandomVibeProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the random vibe event. | +| profileName | [string](#string) | | Name of the random vibe profile. | +| freqUnits | [string](#string) | | Frequency units. | +| amplUnits | [string](#string) | | Amplitude units. | +| randomVibeProfileEntries | [AddRandomVibeProfilesRequest.RandomVibeProfile.Entry](#AddRandomVibeProfilesRequest-RandomVibeProfile-Entry) | repeated | List of frequency and amplitude values for a random vibe life cycle event. | + + + + + + + + +## AddRandomVibeProfilesRequest.RandomVibeProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| freq | [double](#double) | | Frequency. | +| ampl | [double](#double) | | Amplitude. | + + + + + + + + +## AddRandomVibeProfilesResponse + +Response from adding random vibe profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddShockEventRequest + +Request to define and add a new shock life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the shock event. | +| description | [string](#string) | | Description of the shock event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this shock event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: 30,15 | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: 0,0,1 | + + + + + + + + +## AddShockEventResponse + +Response from adding a shock life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddShockProfilesRequest + +Request to define and add new shock life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| shockProfiles | [AddShockProfilesRequest.ShockProfile](#AddShockProfilesRequest-ShockProfile) | repeated | List of shock life cycle event profiles for a specified project. | + + + + + + + + +## AddShockProfilesRequest.ShockProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the shock event. | +| profileName | [string](#string) | | Name of the shock profile. | +| duration | [double](#double) | | Pulse duration. | +| durationUnits | [string](#string) | | Pulse duration unit. | +| sampleRate | [double](#double) | | Sample rate. | +| sampleRateUnits | [string](#string) | | Sample rate unit. | +| loadUnits | [string](#string) | | Load unit. | +| freqUnits | [string](#string) | | Frequency unit. | +| shockProfileEntries | [AddShockProfilesRequest.ShockProfile.Entry](#AddShockProfilesRequest-ShockProfile-Entry) | repeated | Primary shape entry for the shock profile. | + + + + + + + + +## AddShockProfilesRequest.ShockProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| shape | [string](#string) | | Shape of the shock profile. | +| load | [double](#double) | | Load. | +| freq | [double](#double) | | Frequency rate. | +| decay | [double](#double) | | Decay rate. | + + + + + + + + +## AddShockProfilesResponse + +Response from adding shock life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddThermalEventRequest + +Request to define and add a new thermal life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the thermal event. | +| description | [string](#string) | | Description of the thermal event. | +| numOfCycles | [double](#double) | | Number of cycles defined for this thermal event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| cycleState | [string](#string) | | The life cycle state. For example: "OPERATING", "STORAGE". | + + + + + + + + +## AddThermalEventResponse + +Response from adding a thermal life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddThermalProfilesRequest + +Request to define and add a new thermal life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalProfiles | [AddThermalProfilesRequest.ThermalProfile](#AddThermalProfilesRequest-ThermalProfile) | repeated | List of thermal life cycle event profiles for a specified project. | + + + + + + + + +## AddThermalProfilesRequest.ThermalProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the thermal event. | +| profileName | [string](#string) | | Name of the thermal profile. | +| timeUnits | [string](#string) | | Time units. | +| tempUnits | [string](#string) | | Temperature units. | +| thermalProfileEntries | [AddThermalProfilesRequest.ThermalProfile.Entry](#AddThermalProfilesRequest-ThermalProfile-Entry) | repeated | List of step entries for a life cycle event and/or phase. | + + + + + + + + +## AddThermalProfilesRequest.ThermalProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| step | [string](#string) | | Name of the step. | +| type | [string](#string) | | Profile step type. "HOLD" or "RAMP". | +| time | [double](#double) | | Time duration of the step. | +| temp | [double](#double) | | Temperature of the step. | + + + + + + + + +## AddThermalProfilesResponse + +Response from adding thermal profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## CreateLifePhaseRequest + +Request for creating a life phase. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of new life phase. | +| description | [string](#string) | | Description of new life phase. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for new life phase. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | + + + + + + + + +## CreateLifePhaseResponse + +Response from creating a life phase. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of error messages. | + + + + + + + + +## DeleteEventRequest + +Request to delete a life cycle event in a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase from which to delete this event. | +| eventName | [string](#string) | | Name of the event to be deleted. | + + + + + + + + +## DeleteLifePhaseResponse + +Response for deleting a life phase + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +## DeletePhaseRequest + +Request for deleting a life phase + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | Sherlock life phase name. | + + + + + + + + +## Events + +Represents an event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Event name. | + + + + + + + + +## ListAmplUnitsRequest + +Request for a list of amplitude units. + + + + + + + + +## ListAmplUnitsResponse + +Represents a list of amplitude units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| amplUnits | [string](#string) | repeated | List of amplitude units. | + + + + + + + + +## ListDurationUnitsRequest + +Request for a list of duration units for event settings. + + + + + + + + +## ListDurationUnitsResponse + +Represents a list of duration units for event settings in life cycle. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| durationUnits | [string](#string) | repeated | List of duration units. | + + + + + + + + +## ListFreqUnitsRequest + +Request for a list of frequency units. + + + + + + + + +## ListFreqUnitsResponse + +Represents a list of frequency units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| freqUnits | [string](#string) | repeated | List of frequency units. For example: "HZ", "KHZ", "MHZ", "GHZ". | + + + + + + + + +## ListHarmonicEventsRequest + +Request for a list of harmonic events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListHarmonicEventsResponse + +Represents a list of harmonic events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of harmonic events. | + + + + + + + + +## ListHarmonicProfileTypesRequest + +Request for a list of harmonic load profile types. + + + + + + + + +## ListHarmonicProfileTypesResponse + +Represents a list of harmonic load profile types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of harmonic load profile types. "Uniaxial", "Triaxial". | + + + + + + + + +## ListLCEventsRequest + +Request for a list of life cycle phases and events for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListLCEventsResponse + +Represents the life cycle phases and events for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| lcPhases | [ListLCEventsResponse.LifeCyclePhase](#ListLCEventsResponse-LifeCyclePhase) | repeated | List of LifeCyclePhases for a specified project. | + + + + + + + + +## ListLCEventsResponse.LifeCyclePhase + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle phase name. | +| description | [string](#string) | | Life cycle phase description. | +| lcEvents | [ListLCEventsResponse.LifeCyclePhase.LifeCycleEvent](#ListLCEventsResponse-LifeCyclePhase-LifeCycleEvent) | repeated | List of LifeCycleEvents for a project phase. | + + + + + + + + +## ListLCEventsResponse.LifeCyclePhase.LifeCycleEvent + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle event name. | +| description | [string](#string) | | Life cycle event description. | +| type | [string](#string) | | Life cycle type. For example: "Thermal Event", "Shock Event", "Random Vibe", "Harmonic Vibe". | + + + + + + + + +## ListLCStatesRequest + +Request for a list of life cycle states. + + + + + + + + +## ListLCStatesResponse + +Represents a list of life cycle states. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| states | [string](#string) | repeated | List of life cycle states. For example: "Operating", "Storage". | + + + + + + + + +## ListLCTypesRequest + +Request for a list of life cycle types. + + + + + + + + +## ListLCTypesResponse + +Represents a list of life cycle types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of life cycle types. For example, "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | + + + + + + + + +## ListRandomVibeEventsRequest + +Request for a list of random vibe events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListRandomVibeEventsResponse + +Represents a list of random vibe events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of random vibe events. | + + + + + + + + +## ListRandomVibeProfileTypesRequest + +Request for a list of random vibe profile types. + + + + + + + + +## ListRandomVibeProfileTypesResponse + +Represents a list of random vibe profile types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of random vibe profile types. Currently there is only one: "Uniaxial". | + + + + + + + + +## ListShockEventsRequest + +Request for a list of shock events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListShockEventsResponse + +Represents a list of shock events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of shock events. | + + + + + + + + +## ListShockLoadUnitsRequest + +Request for a list of shock load units. + + + + + + + + +## ListShockLoadUnitsResponse + +Represents a list of shock load units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | List of shock load units. For example: "G", "m/s2", "mm/s2". | + + + + + + + + +## ListShockPulsesRequest + +Request for a list of shock Pulses. + + + + + + + + +## ListShockPulsesResponse + +Represents a list of shock Pulses. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| shockPulse | [string](#string) | repeated | List of shock pulses. For example: "FullSine", "HalfSine", "Triangle", "Sawtooth", "FullSquare". | + + + + + + + + +## ListTempUnitsRequest + +Request for a list of temperature units. + + + + + + + + +## ListTempUnitsResponse + +Represents a list of temperature units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| tempUnits | [string](#string) | repeated | List of temperature units. For example: "C", "F", "K". | + + + + + + + + +## LoadHarmonicProfileRequest + +Request to load a harmonic life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Harmonic event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| harmonicCsvProps | [LoadHarmonicProfileRequest.CSVProps](#LoadHarmonicProfileRequest-CSVProps) | | Properties for a .csv file load. | +| triaxialAxis | [string](#string) | | If the harmonic profile type is "Triaxial", the axis this profile should be assigned to. Valid values are: x, y, z. | + + + + + + + + +## LoadHarmonicProfileRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the harmonic profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | + + + + + + + + +## LoadHarmonicProfileResponse + +Response from loading a harmonic vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## LoadRandomVibeProfileRequest + +Request to load a random vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Random vibe event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| randomVibeCsvProps | [LoadRandomVibeProfileRequest.CSVProps](#LoadRandomVibeProfileRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +## LoadRandomVibeProfileRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the random vibe profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| amplColumn | [string](#string) | | Amplitude column name. | +| amplUnits | [string](#string) | | Amplitude units. | + + + + + + + + +## LoadRandomVibeProfileResponse + +Response from loading a random vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## LoadShockProfileDatasetRequest + +Request to load a shock life cycle event profile using the dataset (time and load) from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Shock event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| shockDsCsvProps | [LoadShockProfileDatasetRequest.CSVProps](#LoadShockProfileDatasetRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +## LoadShockProfileDatasetRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the shock profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| timeColumn | [string](#string) | | Time column name. | +| timeUnits | [string](#string) | | Time units. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | + + + + + + + + +## LoadShockProfileDatasetResponse + +Response from loading a shock profile using the dataset from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## LoadShockProfilePulsesRequest + +Request to load a shock life cycle event profile using pulses from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Shock event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| shockPulsesCsvProps | [LoadShockProfilePulsesRequest.CSVProps](#LoadShockProfilePulsesRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +## LoadShockProfilePulsesRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the shock profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| duration | [double](#double) | | Pulse duration length. | +| durationUnits | [string](#string) | | Pulse duration time units. | +| sampleRate | [double](#double) | | Sample rate. | +| sampleRateUnits | [string](#string) | | Sample rate units. | +| shapeColumn | [string](#string) | | Pulse shape column name. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| decayColumn | [string](#string) | | Decay column name. | + + + + + + + + +## LoadShockProfilePulsesResponse + +Response from loading a shock profile using pulses from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## LoadThermalProfileRequest + +Request to load a thermal life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Thermal event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| csvProps | [LoadThermalProfileRequest.CSVProps](#LoadThermalProfileRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +## LoadThermalProfileRequest.CSVProps + +.csv file properties. This is only required for .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the thermal profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| stepColumn | [string](#string) | | Step column name. | +| typeColumn | [string](#string) | | Step type column name. | +| timeColumn | [string](#string) | | Time duration column name. | +| timeUnits | [string](#string) | | Time units column name. | +| tempColumn | [string](#string) | | Temperature column name. | +| tempUnits | [string](#string) | | Temperature units column name. | + + + + + + + + +## LoadThermalProfileResponse + +Response from loading a thermal profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + + + + + + + +## SherlockLifeCycleService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| addHarmonicEvent | [.AddHarmonicEventRequest](#AddHarmonicEventRequest) | [.AddHarmonicEventResponse](#AddHarmonicEventResponse) | Define and add a new harmonic vibe life cycle event. | +| addHarmonicVibeProfiles | [.AddHarmonicVibeProfilesRequest](#AddHarmonicVibeProfilesRequest) | [.AddHarmonicVibeProfilesResponse](#AddHarmonicVibeProfilesResponse) | Define and add new harmonic vibe life cycle event profiles. | +| addRandomVibeProfiles | [.AddRandomVibeProfilesRequest](#AddRandomVibeProfilesRequest) | [.AddRandomVibeProfilesResponse](#AddRandomVibeProfilesResponse) | Define and add new random vibe life cycle event profiles. | +| addRandomVibeEvent | [.AddRandomVibeEventRequest](#AddRandomVibeEventRequest) | [.AddRandomVibeEventResponse](#AddRandomVibeEventResponse) | Define and add a new random vibe life cycle event. | +| addShockEvent | [.AddShockEventRequest](#AddShockEventRequest) | [.AddShockEventResponse](#AddShockEventResponse) | Define and add a new shock life cycle event. | +| addShockProfiles | [.AddShockProfilesRequest](#AddShockProfilesRequest) | [.AddShockProfilesResponse](#AddShockProfilesResponse) | Define and add new shock life cycle event profiles. Keep in mind, the pulse duration and load values defined in the Shock Profile Editor are relative values used solely within the editor to define the profile shape. A combination of all the primary pulse shapes is then used to define the pulse profile. | +| addThermalEvent | [.AddThermalEventRequest](#AddThermalEventRequest) | [.AddThermalEventResponse](#AddThermalEventResponse) | Define and add a new thermal life cycle event. | +| addThermalProfiles | [.AddThermalProfilesRequest](#AddThermalProfilesRequest) | [.AddThermalProfilesResponse](#AddThermalProfilesResponse) | Define and add new thermal life cycle event profiles. | +| createLifePhase | [.CreateLifePhaseRequest](#CreateLifePhaseRequest) | [.CreateLifePhaseResponse](#CreateLifePhaseResponse) | Define and add a new life phase. | +| deleteEvent | [.DeleteEventRequest](#DeleteEventRequest) | [.ReturnCode](#ReturnCode) | Delete a life cycle event. | +| listAmplUnits | [.ListAmplUnitsRequest](#ListAmplUnitsRequest) | [.ListAmplUnitsResponse](#ListAmplUnitsResponse) | Returns a list of amplitude units when adding a random vibe profile. | +| listDurationUnits | [.ListDurationUnitsRequest](#ListDurationUnitsRequest) | [.ListDurationUnitsResponse](#ListDurationUnitsResponse) | Returns a list of duration units when adding a life cycle event. | +| listFreqUnits | [.ListFreqUnitsRequest](#ListFreqUnitsRequest) | [.ListFreqUnitsResponse](#ListFreqUnitsResponse) | Returns a list of frequency units. | +| listHarmonicEvents | [.ListHarmonicEventsRequest](#ListHarmonicEventsRequest) | [.ListHarmonicEventsResponse](#ListHarmonicEventsResponse) | Returns a list of harmonic events defined for a project. | +| listHarmonicProfileTypes | [.ListHarmonicProfileTypesRequest](#ListHarmonicProfileTypesRequest) | [.ListHarmonicProfileTypesResponse](#ListHarmonicProfileTypesResponse) | Returns a list of harmonic load Profile types. | +| listLifeCycleEvents | [.ListLCEventsRequest](#ListLCEventsRequest) | [.ListLCEventsResponse](#ListLCEventsResponse) | Returns a list of life cycle phases and their events given a Sherlock project directory. | +| listLifeCycleStates | [.ListLCStatesRequest](#ListLCStatesRequest) | [.ListLCStatesResponse](#ListLCStatesResponse) | Returns a list of life cycle states. | +| listLifeCycleTypes | [.ListLCTypesRequest](#ListLCTypesRequest) | [.ListLCTypesResponse](#ListLCTypesResponse) | Returns a list of life cycle types. | +| listRandomVibeProfileTypes | [.ListRandomVibeProfileTypesRequest](#ListRandomVibeProfileTypesRequest) | [.ListRandomVibeProfileTypesResponse](#ListRandomVibeProfileTypesResponse) | Returns a list of random vibe profile types. | +| listRandomVibeEvents | [.ListRandomVibeEventsRequest](#ListRandomVibeEventsRequest) | [.ListRandomVibeEventsResponse](#ListRandomVibeEventsResponse) | Returns a list of random vibe events defined for a project. | +| listShockEvents | [.ListShockEventsRequest](#ListShockEventsRequest) | [.ListShockEventsResponse](#ListShockEventsResponse) | Returns a list of shock events defined for a project. | +| listShockLoadUnits | [.ListShockLoadUnitsRequest](#ListShockLoadUnitsRequest) | [.ListShockLoadUnitsResponse](#ListShockLoadUnitsResponse) | Returns a list of shock load units. | +| listShockPulses | [.ListShockPulsesRequest](#ListShockPulsesRequest) | [.ListShockPulsesResponse](#ListShockPulsesResponse) | Returns a list of shock pulses. | +| listTempUnits | [.ListTempUnitsRequest](#ListTempUnitsRequest) | [.ListTempUnitsResponse](#ListTempUnitsResponse) | Returns a list of temperature units. | +| loadHarmonicProfile | [.LoadHarmonicProfileRequest](#LoadHarmonicProfileRequest) | [.LoadHarmonicProfileResponse](#LoadHarmonicProfileResponse) | Loads a harmonic profile from a .dat or .csv file. | +| loadRandomVibeProfile | [.LoadRandomVibeProfileRequest](#LoadRandomVibeProfileRequest) | [.LoadRandomVibeProfileResponse](#LoadRandomVibeProfileResponse) | Loads a random vibe profile from a .dat or .csv file. | +| loadShockProfileDataset | [.LoadShockProfileDatasetRequest](#LoadShockProfileDatasetRequest) | [.LoadShockProfileDatasetResponse](#LoadShockProfileDatasetResponse) | Loads a shock profile using dataset from a .dat or .csv file. | +| loadShockProfilePulses | [.LoadShockProfilePulsesRequest](#LoadShockProfilePulsesRequest) | [.LoadShockProfilePulsesResponse](#LoadShockProfilePulsesResponse) | Loads a shock profile using pulses from a .dat or .csv file. | +| loadThermalProfile | [.LoadThermalProfileRequest](#LoadThermalProfileRequest) | [.LoadThermalProfileResponse](#LoadThermalProfileResponse) | Loads a thermal profile from a .dat or .csv file. | +| deletePhase | [.DeletePhaseRequest](#DeletePhaseRequest) | [.ReturnCode](#ReturnCode) | Delete a life phase for a project. | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockModelService.proto.md b/2025R1_Test/sherlock-split-files/SherlockModelService.proto.md new file mode 100644 index 0000000000..63bf36e9bd --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockModelService.proto.md @@ -0,0 +1,469 @@ +# SherlockModelService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## DrillHoleModeling + +Drill hole properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModelingEnabled | [bool](#bool) | | Determines if drill holes will be included in the exported model. | +| minHoleDiameter | [Measurement](#Measurement) | | All drill holes with a diameter less than this will not be included in the exported model. | +| maxEdgeLength | [Measurement](#Measurement) | | Set this to 0 to include all drill holes. + +Specifies the size of the segments used to represent round drill holes by a polygon. | + + + + + + + + +## ExportAEDBRequest + +Request to export an Electronics Desktop model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the Electronics Desktop export file. | +| overwrite | [bool](#bool) | | Overwrite existing file if true. | +| displayModel | [bool](#bool) | | Display model after export if true. | + + + + + + + + +## ExportFEAModelRequest + +Request to export an FEA model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the export file. | +| analysis | [ExportFEAModelRequest.ExportAnalysis](#ExportFEAModelRequest-ExportAnalysis) | | The ExportAnalysis enum representing the type of analysis that is being exported. | +| drillHoleParam | [ExportFEAModelRequest.DrillHoleParam](#ExportFEAModelRequest-DrillHoleParam) | | Drill Holes modeling parameters - Min Hole Diameter and Max. Edge Length. If any of this parameter is provided, drill hole modeling will be enabled. | +| detectLeadModeling | [string](#string) | | If enabled, automatically enable lead modeling if any part has lead geometry defined, valid values are ENABLED/enabled or DISABLED/disabled. | +| leadModelParam | [ExportFEAModelRequest.LeadModelParam](#ExportFEAModelRequest-LeadModelParam) | | Lead modeling parameter. | +| displayModel | [bool](#bool) | | Display model after export. | +| clearFEADatabase | [bool](#bool) | | Clear FEA Database before defining model. | +| useFEAModelID | [bool](#bool) | | Use FEA Model ID. | +| coordinateUnits | [string](#string) | | Units of exported model coordinates, valid values are "in", "mm", "m", "mil", "micron", "nm". | + + + + + + + + +## ExportFEAModelRequest.DrillHoleParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModeling | [string](#string) | | Enables or disables drill hole modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| minHoleDiameter | [ExportFEAModelRequest.DrillHoleParam.MinHoleDiameter](#ExportFEAModelRequest-DrillHoleParam-MinHoleDiameter) | | Minimum hole diameter info for a drill hole. | +| maxEdgeLength | [ExportFEAModelRequest.DrillHoleParam.MaxEdgeLength](#ExportFEAModelRequest-DrillHoleParam-MaxEdgeLength) | | Maximum edge length info for a drill hole. | + + + + + + + + +## ExportFEAModelRequest.DrillHoleParam.MaxEdgeLength + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Maximum edge length value. | +| unit | [string](#string) | | Maximum edge length unit. | + + + + + + + + +## ExportFEAModelRequest.DrillHoleParam.MinHoleDiameter + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Minimum hole diameter value. | +| unit | [string](#string) | | Minimum hole diameter unit. | + + + + + + + + +## ExportFEAModelRequest.LeadModelParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| leadModeling | [string](#string) | | Enables or disables lead modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| leadElemOrder | [string](#string) | | Element order, valid values are "First Order (Linear)", "Second Order (Quadratic)", or "Solid Shell". | +| maxMeshSize | [ExportFEAModelRequest.LeadModelParam.MaxMeshSize](#ExportFEAModelRequest-LeadModelParam-MaxMeshSize) | | Max mesh size info for a lead model param. | +| verticalMeshSize | [ExportFEAModelRequest.LeadModelParam.VerticalMeshSize](#ExportFEAModelRequest-LeadModelParam-VerticalMeshSize) | | Vertical mesh size info for a lead model param. | +| thicknessCount | [int32](#int32) | | The number of elements through the lead thickness that will be created per lead. | +| aspectRatio | [int32](#int32) | | The aspect ratio is multiplied by the lead thickness divided by the through thickness count to give the lead element height. | + + + + + + + + +## ExportFEAModelRequest.LeadModelParam.MaxMeshSize + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Max mesh size value. | +| unit | [string](#string) | | Max mesh size unit. | + + + + + + + + +## ExportFEAModelRequest.LeadModelParam.VerticalMeshSize + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Vertical mesh size value. | +| unit | [string](#string) | | Vertical mesh size unit. | + + + + + + + + +## ExportTraceModelRequest + +Request to export one or many trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceModelExportParams | [TraceModelExportParams](#TraceModelExportParams) | repeated | Parameters for a single trace model export. | + + + + + + + + +## ExportTraceReinforcementModelRequest + +Request to export a trace reinforcement model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the trace reinforcement export file. | +| overwrite | [bool](#bool) | | Overwrite existing file if true. | +| displayModel | [bool](#bool) | | Display model after export if true. | +| clearFEADatabase | [bool](#bool) | | Clear FEA Database before defining model if true. | +| generateModelsForAllLayers | [bool](#bool) | | Generate models for all layers. | +| traceParam | [ExportTraceReinforcementModelRequest.TraceParam](#ExportTraceReinforcementModelRequest-TraceParam) | | Trace properties (Diameter Threshold and Minimum Hole Diameter for Shell/Beam). | +| traceDrillHoleParam | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam) | | **Deprecated.** Drill Holes modeling parameters - Min Hole Diameter and Max. Edge Length. If any of this parameter is provided, drill hole modeling will be enabled. | +| drillHoleModeling | [DrillHoleModeling](#DrillHoleModeling) | | Properties used for exporting drill holes. | +| coordinateUnits | [string](#string) | | Units of exported model coordinates, valid values are "in", "mm", "m", "mil", "micron", "nm". | + + + + + + + + +## ExportTraceReinforcementModelRequest.TraceDrillHoleParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModeling | [string](#string) | | Enables or disables drill hole modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| minHoleDiameter | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MinHoleDiameter](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam-MinHoleDiameter) | | Minimum hole diameter info for a trace drill hole param. | +| maxEdgeLength | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MaxEdgeLength](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam-MaxEdgeLength) | | Maximum edge length info for a trace drill hole param. | + + + + + + + + +## ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MaxEdgeLength + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Maximum edge length value. | +| unit | [string](#string) | | Maximum edge length unit. | + + + + + + + + +## ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MinHoleDiameter + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Minimum hole diameter value. | +| unit | [string](#string) | | Minimum hole diameter unit. | + + + + + + + + +## ExportTraceReinforcementModelRequest.TraceParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| diameterThreshold | [ExportTraceReinforcementModelRequest.TraceParam.DiameterThreshold](#ExportTraceReinforcementModelRequest-TraceParam-DiameterThreshold) | | Diameter threshold info for a trace parameter. | +| minHoleDiameterForShellOrBeam | [ExportTraceReinforcementModelRequest.TraceParam.MinHoleDiameterForShellOrBeam](#ExportTraceReinforcementModelRequest-TraceParam-MinHoleDiameterForShellOrBeam) | | Minimum hole diameter info for Shell or Beam for a trace parameter. | + + + + + + + + +## ExportTraceReinforcementModelRequest.TraceParam.DiameterThreshold + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Diameter threshold value. | +| unit | [string](#string) | | Diameter threshold unit. | + + + + + + + + +## ExportTraceReinforcementModelRequest.TraceParam.MinHoleDiameterForShellOrBeam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Min. hole diameter value for Shell/Beam. | +| unit | [string](#string) | | Min. hole diameter unit for Shell/Beam. | + + + + + + + + +## GenerateTraceModelRequest + +Request to generate a trace model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. If left empty, trace models will be generated for all CCAs and all of their copper layers. | +| copperLayerName | [string](#string) | | Copper layer from which to generate the trace model. If left empty, trace models will be generated for all copper layers. | +| maxArcSegment | [double](#double) | | Max arc segment. | +| maxArcSegmentUnits | [string](#string) | | Max arc segment units. | +| minTraceArea | [double](#double) | | Min trace area. | +| minTraceAreaUnits | [string](#string) | | Min trace area units. | +| minHoleArea | [double](#double) | | Min hole area. | +| minHoleAreaUnits | [string](#string) | | Min hole area units. | +| useSnapshotForNonImageLayer | [bool](#bool) | | Use an image to generate the trace model for layers that are not image layers. If a snapshot image exists for the layer, that snapshot is used. Otherwise this creates an image that is identical to creating a snapshot. | + + + + + + + + +## TraceModelExportParams + +All parameters required to export a trace model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | Sherlock CCA name. | +| filePath | [string](#string) | | Full file path to the trace export file. | +| copperLayerName | [string](#string) | | Name of the layer in the CCA to export. | +| overwriteExistingFile | [bool](#bool) | | Option that determines if any existing files get overwritten. | +| displayModelAfterExport | [bool](#bool) | | Option to display the model after the export is done. | +| clearFEADatabase | [bool](#bool) | optional | Clears FEA Database. Applicable for .apdl, and .cdb. This will be set to false if it is omitted for applicable file types. | +| useFEAModelID | [bool](#bool) | | Use FEA Model ID. | +| coordUnits | [string](#string) | optional | Units of the coordinate system. Applicable to .py .wbjn, and .stp/.step. This will be set to mm if omitted for applicable file types. | +| pcbMeshPropParam | [TraceModelExportParams.PcbMeshPropParam](#TraceModelExportParams-PcbMeshPropParam) | | Properties used for exporting PCB mesh. | +| tracePropParam | [TraceModelExportParams.TracePropParam](#TraceModelExportParams-TracePropParam) | | Properties used for exporting the traces. | +| drillHoleModeling | [DrillHoleModeling](#DrillHoleModeling) | | Properties used for exporting drill holes. | + + + + + + + + +## TraceModelExportParams.PcbMeshPropParam + +Mesh properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| meshType | [MeshType](#MeshType) | | Options of different trace meshing strategies. The options available depend on export file type. | +| isModelingRegionEnabled | [bool](#bool) | | Determines if pre-defined modeling regions will be applied to the exported trace model. | + + + + + + + + +## TraceModelExportParams.TracePropParam + +Trace properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceOutputs | [TraceOutputType](#TraceOutputType) | | Options to select which trace regions to include in the 3D model. | +| elementOrder | [ElementOrder](#ElementOrder) | | Type of FEA element to be used when modeling each component (First/linear, Second/quadratic, Solid Shell). | +| maxMeshSize | [Measurement](#Measurement) | | Value passed to FEA meshing tool to indicate the desired element sizes. | +| maxHolesPerTrace | [int32](#int32) | | Maximum number of holes allowed in a trace before partitioning it into multiple traces. | + + + + + + + + + + +## ExportFEAModelRequest.ExportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NaturalFreq | 0 | Natural Frequency Analysis. | +| HarmonicVibe | 1 | Harmonic Vibe Analysis. | +| ICTAnalysis | 2 | ICT Analysis. | +| MechanicalShock | 3 | Mechanical Shock Analysis. | +| RandomVibe | 4 | Random Vibe Analysis. | + + + + + +## MeshType + +Different ways meshes are created. The options + available depend on the export file type. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NONE | 0 | Defines only geometric volumes without generating mesh elements. | +| BONDED | 1 | Defines meshed elements generated by Sherlock. | +| SWEEP | 2 | Defines geometric volumes along with commands to mesh the volumes depending on the file type. | + + + + + +## TraceOutputType + +Indicates which trace regions to include in the 3D model. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| ALL_REGIONS | 0 | Both Conductor and Dielectric. | +| CONDUCTOR_REGIONS | 1 | The traces themselves. | +| DIELECTRIC_REGIONS | 2 | Regions that surround the conductor regions (Ex. areas filled with resin). | + + + + + + + + + +## SherlockModelService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| exportFEAModel | [.ExportFEAModelRequest](#ExportFEAModelRequest) | [.ReturnCode](#ReturnCode) | Export an FEA Model. | +| exportTraceReinforcementModel | [.ExportTraceReinforcementModelRequest](#ExportTraceReinforcementModelRequest) | [.ReturnCode](#ReturnCode) | Export a trace reinforcement model. | +| generateTraceModel | [.GenerateTraceModelRequest](#GenerateTraceModelRequest) | [.ReturnCode](#ReturnCode) | Generate a trace model. | +| exportTraceModel | [.ExportTraceModelRequest](#ExportTraceModelRequest) | [.ReturnCode](#ReturnCode) | Export a trace model. | +| exportAEDB | [.ExportAEDBRequest](#ExportAEDBRequest) | [.ReturnCode](#ReturnCode) | Export an Electronics Desktop model. | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockPartsService.proto.md b/2025R1_Test/sherlock-split-files/SherlockPartsService.proto.md new file mode 100644 index 0000000000..9a92654b4e --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockPartsService.proto.md @@ -0,0 +1,614 @@ +# SherlockPartsService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## ExportNetListRequest + +Contains the options needed to export a net list to a delimited output file (csv but can have delimiters other than a comma) + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| outputFilePath | [string](#string) | | Full path of the file where the table will be written. | +| overwriteExisting | [bool](#bool) | | Flag to determine if existing files should be overwritten if they match the outputFilePath. False by default. | +| colDelimiter | [TableDelimiter](#TableDelimiter) | | Enum that specifies supported delimiter character to be used. Set to COMMA by default. Not applicable to Excel files like xls, xlsx. | +| utf8Enabled | [bool](#bool) | | Flag that specifies if UTF-8 will be used. False by default. Not applicable to Excel files like xls, xlsx. | + + + + + + + + +## ExportPartsListRequest + +Request to export the parts list for all parts for a project CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the export parts list .csv file. | + + + + + + + + +## GetBoardSidesRequest + +Request to list valid board sides. + + + + + + + + +## GetBoardSidesResponse + +Represents a list of valid board sides. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boardSides | [string](#string) | repeated | Board sides. | + + + + + + + + +## GetPartLocationRequest + +Request to get a part's location. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| refDes | [string](#string) | | A comma separated list of reference designators for a list of parts, or a Ref Des for one part. | +| locationUnits | [string](#string) | | Unit of length for the part location. Supported values are IN, MM, M, MIL, MICRON, and NM. | + + + + + + + + +## GetPartLocationResponse + +Represents one or multiple parts' location properties + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| locationData | [GetPartLocationResponse.LocationData](#GetPartLocationResponse-LocationData) | repeated | List of location data for a part or list of parts in a specified project and CCA. | + + + + + + + + +## GetPartLocationResponse.LocationData + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| x | [double](#double) | | Location of the part along the X axis. | +| y | [double](#double) | | Location of the part along the Y axis. | +| rotation | [double](#double) | | Rotation of the part on the board in degrees. | +| locationUnits | [string](#string) | | Unit of length for the part location. | +| boardSide | [string](#string) | | Side of board on which the component exists. | +| mirrored | [bool](#bool) | | Indicates if the component is mirrored across the Y-axis. | +| refDes | [string](#string) | | Ref Des for the corresponding part. | + + + + + + + + +## GetPartLocationUnitsRequest + +Request to list valid location units. + + + + + + + + +## GetPartLocationUnitsResponse + +Represents a list of valid location units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | Location units. | + + + + + + + + +## ImportPartsListRequest + +Request to import a parts list for a project CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| importFile | [string](#string) | | Full file path to the parts list .csv file. | +| importAsUserSrc | [bool](#bool) | | If true, set the data source of the properties to "User". Otherwise, set the data source to the name of the importFile. | + + + + + + + + +## ListPartsLibrariesRequest + +Request to list the available parts libraries. + + + + + + + + +## ListPartsLibrariesResponse + +Represents a list of available parts libraries. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| partLibrary | [string](#string) | repeated | Parts library name. | + + + + + + + + +## ListPartsNotUpdatedRequest + +Request to get a list of parts not updated from the Sherlock Part Library. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListPartsNotUpdatedResponse + +Represents a list of parts not updated from the Sherlock Part Library. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccas | [ListPartsNotUpdatedResponse.CCA](#ListPartsNotUpdatedResponse-CCA) | repeated | List of CCAs containing Parts not updated. | + + + + + + + + +## ListPartsNotUpdatedResponse.CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| parts | [ListPartsNotUpdatedResponse.CCA.Part](#ListPartsNotUpdatedResponse-CCA-Part) | repeated | List of Parts not updated for a CCA. | + + + + + + + + +## ListPartsNotUpdatedResponse.CCA.Part + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | | Reference designator for the part. | +| partNumber | [string](#string) | | Part number. | + + + + + + + + +## UpdateLeadModelingRequest + +Request to enable Lead Modeling for all non LEADLESS parts leads. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +## UpdatePartsListFromAVLRequest + +Request to update the parts list from AVL. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| matching | [MatchingMode](#MatchingMode) | | How sherlock matches parts in the AVL | +| duplication | [DuplicationMode](#DuplicationMode) | | How sherlock handles duplicate parts found. | +| avlPartNum | [AVLPartNum](#AVLPartNum) | | Update part number and vendor/manufacturer or part number only. | +| avlDesc | [AVLDescription](#AVLDescription) | | Update description or not. | + + + + + + + + +## UpdatePartsListFromAVLResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| numPartsUpdated | [int32](#int32) | | Number of parts updated in the parts list. | +| updateErrors | [string](#string) | repeated | Specific errors that occured during update. | + + + + + + + + +## UpdatePartsListPropertiesRequest + +Request to update one or more properties of one or more parts in a parts list. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name for which part properties will be updated. | +| partProperties | [UpdatePartsListPropertiesRequest.PartProperties](#UpdatePartsListPropertiesRequest-PartProperties) | repeated | List of parts with properties to be updated. | + + + + + + + + +## UpdatePartsListPropertiesRequest.PartProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | repeated | The reference designator for each part to be updated. If not included, update properties for all parts in the CCA. | +| properties | [UpdatePartsListPropertiesRequest.PartProperties.Property](#UpdatePartsListPropertiesRequest-PartProperties-Property) | repeated | Part properties to be updated. | + + + + + + + + +## UpdatePartsListPropertiesRequest.PartProperties.Property + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of property to be updated. | +| value | [string](#string) | | Value to be applied to the chosen part property. | + + + + + + + + +## UpdatePartsListPropertiesResponse + +Contains the status of the parts properties update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateErrors | [UpdatePartsListPropertiesResponse.PartPropertyError](#UpdatePartsListPropertiesResponse-PartPropertyError) | repeated | Part property update errors. | + + + + + + + + +## UpdatePartsListPropertiesResponse.PartPropertyError + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | optional | The reference designator of the part. Not set for invalid property name errors. | +| message | [string](#string) | | Error message when updating the part. | + + + + + + + + +## UpdatePartsListRequest + +Request to update a parts list based on matching and duplication preferences provided. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partLibrary | [string](#string) | | Parts library name. | +| matching | [MatchingMode](#MatchingMode) | | Designates the matching mode for updates. | +| duplication | [DuplicationMode](#DuplicationMode) | | Designates how to handle duplications during update. | + + + + + + + + +## UpdatePartsListResponse + +Contains the status of the update as well as all of the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts update error messages. | + + + + + + + + +## UpdatePartsLocationsByFileRequest + +Request to update one or more parts' locations using a CSV file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| numericFormat | [string](#string) | | Numeric format for the file. If not provided, it will default to "English (United States)". | +| filePath | [string](#string) | | File that contains the components and location properties. | + + + + + + + + +## UpdatePartsLocationsByFileResponse + +Contains the status of the parts locations update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts locations update error messages. | + + + + + + + + +## UpdatePartsLocationsRequest + +Request to set a part's location. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partLoc | [UpdatePartsLocationsRequest.PartLocation](#UpdatePartsLocationsRequest-PartLocation) | repeated | List of part locations to be updated for a specified project and CCA. | + + + + + + + + +## UpdatePartsLocationsRequest.PartLocation + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | | Reference designator of the part. | +| x | [string](#string) | | Location of the part along the X axis. | +| y | [string](#string) | | Location of the part along the Y axis. | +| rotation | [string](#string) | | Rotation of the part on the board in degrees. | +| locationUnits | [string](#string) | | Unit of length for the part location. Supported values are IN, MM, M, MIL, MICRON, and NM. | +| boardSide | [string](#string) | | Side of board on which the component exists. Supported values are TOP and BOTTOM. | +| mirrored | [string](#string) | | Indicates if the component is mirrored across the Y-axis. Supported values are Y, and N. | + + + + + + + + +## UpdatePartsLocationsResponse + +Contains the status of the parts locations update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts locations update error messages. | + + + + + + + + + + +## AVLDescription + +Determines if the part description in the parts list +will be updated by the AVL. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| AssignApprovedDescription | 0 | Assign approved description. | +| DoNotChangeDescription | 1 | Do not change description. | + + + + + +## AVLPartNum + +Determines what fields in the part list will get updated by the AVL. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| AssignInternalPartNum | 0 | Assign internal part number. | +| AssignVendorAndPartNum | 1 | Assign vendor & part number. | +| DoNotChangeVendorOrPartNum | 2 | Do not change vendor / part number. | + + + + + +## DuplicationMode + +Determines what happens when there are duplicate matches for parts in the part list +against parts in the AVL or Part Library. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| First | 0 | Uses first matched when there is duplication. | +| Error | 1 | Generates an error when there is duplication. | +| Ignore | 2 | Ignore the matches when there is duplication. | + + + + + + + + + +## SherlockPartsService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| listPartsLibraries | [.ListPartsLibrariesRequest](#ListPartsLibrariesRequest) | [.ListPartsLibrariesResponse](#ListPartsLibrariesResponse) | List the available parts libraries. | +| updatePartsList | [.UpdatePartsListRequest](#UpdatePartsListRequest) | [.UpdatePartsListResponse](#UpdatePartsListResponse) | Update the parts list for a project's CCA. | +| updatePartsListFromAVL | [.UpdatePartsListFromAVLRequest](#UpdatePartsListFromAVLRequest) | [.UpdatePartsListFromAVLResponse](#UpdatePartsListFromAVLResponse) | Update the parts list from the AVL. | +| updatePartsListProperties | [.UpdatePartsListPropertiesRequest](#UpdatePartsListPropertiesRequest) | [.UpdatePartsListPropertiesResponse](#UpdatePartsListPropertiesResponse) | Update the values of given parts. | +| listPartsNotUpdated | [.ListPartsNotUpdatedRequest](#ListPartsNotUpdatedRequest) | [.ListPartsNotUpdatedResponse](#ListPartsNotUpdatedResponse) | List the parts that have not been updated from the Sherlock Part Library. | +| updateLeadModeling | [.UpdateLeadModelingRequest](#UpdateLeadModelingRequest) | [.ReturnCode](#ReturnCode) | Enable lead modeling for all non LEADLESS parts leads in a project's CCA. | +| exportPartsList | [.ExportPartsListRequest](#ExportPartsListRequest) | [.ReturnCode](#ReturnCode) | Export parts list for all parts given a project's CCA. | +| importPartsList | [.ImportPartsListRequest](#ImportPartsListRequest) | [.ReturnCode](#ReturnCode) | Import a parts list for a given a project's CCA. | +| updatePartsLocations | [.UpdatePartsLocationsRequest](#UpdatePartsLocationsRequest) | [.UpdatePartsLocationsResponse](#UpdatePartsLocationsResponse) | Update one or more parts' locations. | +| updatePartsLocationsByFile | [.UpdatePartsLocationsByFileRequest](#UpdatePartsLocationsByFileRequest) | [.UpdatePartsLocationsByFileResponse](#UpdatePartsLocationsByFileResponse) | Update one or more parts' locations using a CSV file. | +| getPartLocationUnits | [.GetPartLocationUnitsRequest](#GetPartLocationUnitsRequest) | [.GetPartLocationUnitsResponse](#GetPartLocationUnitsResponse) | Get a list of valid part location units. | +| getBoardSides | [.GetBoardSidesRequest](#GetBoardSidesRequest) | [.GetBoardSidesResponse](#GetBoardSidesResponse) | Get a list of valid board side values. | +| getPartLocation | [.GetPartLocationRequest](#GetPartLocationRequest) | [.GetPartLocationResponse](#GetPartLocationResponse) | Get the location properties for a part. | +| exportNetList | [.ExportNetListRequest](#ExportNetListRequest) | [.ReturnCode](#ReturnCode) | Export the net list to a file | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockProjectService.proto.md b/2025R1_Test/sherlock-split-files/SherlockProjectService.proto.md new file mode 100644 index 0000000000..d0942ba681 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockProjectService.proto.md @@ -0,0 +1,903 @@ +# SherlockProjectService.proto + +Copyright 2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## AddCcaRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Name of the project. | +| CCAs | [CCA](#CCA) | repeated | CCAs to add. | + + + + + + + + +## AddProjectRequest + +Request to add a project to Sherlock. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| category | [string](#string) | | Project category. | +| description | [string](#string) | | Project description. | + + + + + + + + +## AddStrainMapRequest + +Request to add strain map files to CCAs in a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| strainMapFiles | [AddStrainMapRequest.StrainMapFile](#AddStrainMapRequest-StrainMapFile) | repeated | Strain map files and associated properties to be added. | + + + + + + + + +## AddStrainMapRequest.StrainMapFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| strainMapFile | [string](#string) | | Full path to the strain map file to be added. | +| fileComment | [string](#string) | | File comment text. | +| headerRowCount | [int32](#int32) | | Number of rows before the column header in the file. | +| referenceIDColumn | [string](#string) | | Reference ID column name. | +| strainColumn | [string](#string) | | Strain column name. | +| strainUnits | [string](#string) | | Strain units used in the strain map file. Valid units: µε, ε. | +| cca | [string](#string) | repeated | Project CCA names to to add the file to. | +| numericFormat | [string](#string) | | Numeric format for values. | +| fileType | [AddStrainMapRequest.StrainMapFile.FileType](#AddStrainMapRequest-StrainMapFile-FileType) | | Type of the strain map file. | +| imageFile | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile) | | Image strain map file properties. | + + + + + + + + +## AddStrainMapRequest.StrainMapFile.StrainMapImageFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| coordinateUnits | [string](#string) | | Coordinate units used for board, lengend and image boundaries. | +| boardBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.NodeCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-NodeCoordinate) | repeated | Coordinates of the nodes which make up the board outline. | +| imageBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.ImageCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-ImageCoordinate) | | Coordinates of the board bounds within the image. | +| legendBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-LegendCoordinate) | | Coordinates of the bounds of legend within the image. | +| legendOrientation | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendOrientation](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-LegendOrientation) | | Specify the legend orientation. | +| minStrain | [double](#double) | | Minimum strain value. | +| maxStrain | [double](#double) | | Maximum strain value. | +| strainUnits | [string](#string) | | Units for minimum and maximum strain values. | + + + + + + + + +## AddStrainMapRequest.StrainMapFile.StrainMapImageFile.ImageCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| imageX | [double](#double) | | X-coordinate of the upper left corner. | +| imageY | [double](#double) | | Y-coordinate of the upper left corner. | +| imageH | [double](#double) | | Height of the image. | +| imageW | [double](#double) | | Width of the image. | + + + + + + + + +## AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| legendX | [double](#double) | | X-coordinate of the upper left corner. | +| legendY | [double](#double) | | Y-coordinate of the upper left corner. | +| legendH | [double](#double) | | Height of the legend. | +| legendW | [double](#double) | | Width of the legend. | + + + + + + + + +## AddStrainMapRequest.StrainMapFile.StrainMapImageFile.NodeCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| vertexX | [double](#double) | | X-coordinate of the node. | +| vertexY | [double](#double) | | Y-coordinate of the node. | + + + + + + + + +## AddStrainMapResponse + +Response from adding strain map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## AddThermalMapRequest + +Request to add thermal map files to a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalMapFiles | [AddThermalMapRequest.AddThermalMap](#AddThermalMapRequest-AddThermalMap) | repeated | Thermal map files and associated properties to be added. | + + + + + + + + +## AddThermalMapRequest.AddThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| thermalMapFile | [string](#string) | | Full path to the thermal map file to be added. | +| thermalMapFileProperties | [ThermalMapFile](#ThermalMapFile) | | Thermal map file properties. | + + + + + + + + +## AddThermalMapResponse + +Response from adding thermal map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +## CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the circuit card. | +| description | [string](#string) | optional | Description of the circuit card. | +| defaultSolderType | [string](#string) | optional | Default solder type. | +| defaultStencilThickness | [double](#double) | optional | Default stencil thickness. | +| defaultStencilThicknessUnits | [string](#string) | optional | Default stencil thickness units. | +| defaultPartTempRise | [double](#double) | optional | Default part temp rise. | +| defaultPartTempRiseUnits | [string](#string) | optional | Default part temp rise units. | +| guessPartPropertiesEnabled | [bool](#bool) | optional | Whether to enable guess part properties. | + + + + + + + + +## CreateCcaFromModelingRegionRequest + +Request for creating CCA from a specified modeling region. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cCAsFromModelingRegions | [CreateCcaFromModelingRegionRequest.CCAFromModelingRegion](#CreateCcaFromModelingRegionRequest-CCAFromModelingRegion) | repeated | CCAs from modeling regions to add. | + + + + + + + + +## CreateCcaFromModelingRegionRequest.CCAFromModelingRegion + +Request for each individual property of cca + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Project CCA name. | +| modelingRegionID | [string](#string) | | ID of CCA's modeling region used to create new CCA. | +| description | [string](#string) | | CCA's description. | +| defaultSolderType | [string](#string) | optional | Default solder type. | +| defaultStencilThickness | [double](#double) | optional | Default stencil thickness. | +| defaultStencilThicknessUnits | [string](#string) | optional | Default stencil thickness units. | +| defaultPartTempRise | [double](#double) | optional | Default part temp rise. | +| defaultPartTempRiseUnits | [string](#string) | optional | Default part temp rise units. | +| guessPartProperties | [bool](#bool) | optional | Whether to enable guess part properties. | +| generateImageLayers | [bool](#bool) | optional | Whether to generate image layers | + + + + + + + + +## DeleteProjectRequest + +Request for deleting project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name of project to be deleted. | + + + + + + + + +## ExportProjectRequest + +Request for exporting the designated Sherlock project as a .zip file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| exportDesignFiles | [bool](#bool) | | If true, export all design files assigned to the project. | +| exportResultFiles | [bool](#bool) | | If true, export all analysis module results. | +| exportArchivedResults | [bool](#bool) | | If true, export all archived result files. | +| exportUserFiles | [bool](#bool) | | If true, export all user properties and custom data files. | +| exportLogFiles | [bool](#bool) | | If true, export all Sherlock console and application logs. | +| exportSystemData | [bool](#bool) | | If true, export all system technical data. | +| exportFileDirectory | [string](#string) | | Full path of the directory where the .zip file is to be exported. | +| exportFileName | [string](#string) | | Name of the zip file containing the project's exported data. | +| overwriteExistingFile | [bool](#bool) | | If true, an existing file will be overwritten. | + + + + + + + + +## GenCCAReportRequest + +Request for project CCA report. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | | Project CCA name. | +| author | [string](#string) | | Name of the author who generates the report. | +| company | [string](#string) | | Name of author's company. | + + + + + + + + +## GenCCAReportResponse + +Streams the project CCA report in chunks. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| content | [bytes](#bytes) | | A chunk of the project CCA report being returned in increments. | +| size | [int32](#int32) | | Size of the chunk returned. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +## GenReportRequest + +Request for project report. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| author | [string](#string) | | Name of the author who generates the report. | +| company | [string](#string) | | Name of author's company. | + + + + + + + + +## GenReportResponse + +Streams the project report in chunks. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| content | [bytes](#bytes) | | A chunk of the project report being returned in increments. | +| size | [int32](#int32) | | Size of the chunk returned. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +## ImportIPC2581Request + +Request for importing an IPC-2581 archive. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| archiveFile | [string](#string) | | Full path to the IPC-2581 archive file to be imported. | +| project | [string](#string) | | Sherlock project name. If empty, the filename will be used for the project name. | +| ccaName | [string](#string) | | Project CCA name. If empty, the filename will be used for the CCA name. | +| includeOtherLayers | [bool](#bool) | | Option to include other layers. | +| guessPartProperties | [bool](#bool) | | Option to guess part properties. | +| polylineSimplification | [bool](#bool) | | Option to enable polyline simplification. | +| polylineTolerance | [double](#double) | | Polyline simplification tolerance. | +| polylineToleranceUnits | [string](#string) | | Polyline simplification tolerance units. | + + + + + + + + +## ImportODBRequest + +Request for importing an ODB++ archive. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| archiveFile | [string](#string) | | Full path to the ODB++ archive file to be imported. | +| project | [string](#string) | | Sherlock project name. If empty, the filename will be used for the project name. | +| ccaName | [string](#string) | | Project CCA name. If empty, the filename will be used for the CCA name. | +| processLayerThickness | [bool](#bool) | | Option to assign stackup thickness. | +| includeOtherLayers | [bool](#bool) | | Option to include other layers. | +| processCutoutFile | [bool](#bool) | | Option to process cutouts. | +| guessPartProperties | [bool](#bool) | | Option to guess part properties. | +| imsStackup | [bool](#bool) | | Option to generate IMS stackup. | +| polylineSimplification | [bool](#bool) | | Option to enable polyline simplification. | +| polylineTolerance | [double](#double) | | Polyline simplification tolerance. | +| polylineToleranceUnits | [string](#string) | | Polyline simplification tolerance units. | + + + + + + + + +## ImportProjectZipRequest + +Request for importing a .zip project archive when Sherlock is in multiple project mode. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| category | [string](#string) | | Sherlock project category. | +| archiveFile | [string](#string) | | Full path to the .zip archive file containing the project data. | + + + + + + + + +## ImportProjectZipSingleModeRequest + +Request for importing a .zip project archive when Sherlock is in single project mode. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| projZipRequest | [ImportProjectZipRequest](#ImportProjectZipRequest) | | Encapsulates project name, category and full path to project .zip archive. | +| destFileDir | [string](#string) | | Directory in which the Sherlock project folder will be created. | + + + + + + + + +## ListCCAsRequest + +Request to list CCA's and sub-assembly CCA's for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to return. | + + + + + + + + +## ListCCAsResponse + +Represents the circuit cards, their properties, and sub-assemblies for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccas | [ListCCAsResponse.CCA](#ListCCAsResponse-CCA) | repeated | CCA's assigned to the project. | + + + + + + + + +## ListCCAsResponse.CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| subAssemblies | [ListCCAsResponse.CCA](#ListCCAsResponse-CCA) | repeated | Sub-assemblies assigned to the CCA. | + + + + + + + + +## ListStrainMapsRequest + +Request to list CCA strain maps for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to list strain maps for. | + + + + + + + + +## ListStrainMapsResponse + +Lists the strain maps assigned to the project CCA's. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of errors encountered. | +| ccaStrainMaps | [ListStrainMapsResponse.CcaStrainMap](#ListStrainMapsResponse-CcaStrainMap) | repeated | CCA strain maps assigned to the project. | + + + + + + + + +## ListStrainMapsResponse.CcaStrainMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| strainMaps | [string](#string) | repeated | Strain map names assigned to the CCA. | + + + + + + + + +## ListThermalMapsRequest + +Request to list Thermal map files and their types for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to list thermal maps for. | + + + + + + + + +## ListThermalMapsResponse + +Represents the thermal map files and their types for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of errors encountered. | +| ccaThermalMaps | [ListThermalMapsResponse.CcaThermalMap](#ListThermalMapsResponse-CcaThermalMap) | repeated | CCA thermal map files assigned to the project. | + + + + + + + + +## ListThermalMapsResponse.CcaThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Project CCA name. | +| thermalMaps | [ListThermalMapsResponse.CcaThermalMap.ThermalMap](#ListThermalMapsResponse-CcaThermalMap-ThermalMap) | repeated | Thermal map files assigned to the CCA. | + + + + + + + + +## ListThermalMapsResponse.CcaThermalMap.ThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fileName | [string](#string) | | Name of the Thermal Map file. | +| fileType | [string](#string) | | Thermal map file type. Possible values are: "Icepak Thermal Map (TMAP)", "Thermal Map (CSV)", "Thermal Map (Excel)", "Thermal Map (Image)". | + + + + + + + + +## ThermalMapFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fileName | [string](#string) | | The name of the thermal file to update. | +| fileType | [ThermalMapFile.FileType](#ThermalMapFile-FileType) | | Thermal file type. | +| fileComment | [string](#string) | | Include a comment or description for the file. | +| thermalBoardSide | [ThermalMapFile.ThermalBoardSide](#ThermalMapFile-ThermalBoardSide) | | Thermal board side. | +| csvExcelFile | [ThermalMapFile.CsvExcelFile](#ThermalMapFile-CsvExcelFile) | | Used to CSV and Excel files. | +| imageFile | [ThermalMapFile.ImageFile](#ThermalMapFile-ImageFile) | | Used to add properties to Image files. | +| thermalProfiles | [string](#string) | repeated | List of thermal profiles. | +| cca | [string](#string) | repeated | Project CCA Name. | + + + + + + + + +## ThermalMapFile.CsvExcelFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| headerRowCount | [int32](#int32) | | Number of rows before the column header in the file. | +| referenceIDColumn | [string](#string) | | Reference ID column. | +| temperatureColumn | [string](#string) | | Temperature column. | +| temperatureUnits | [string](#string) | | Units for temperature values. | +| numericFormat | [string](#string) | | Numeric format for values. | + + + + + + + + +## ThermalMapFile.ImageFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| coordinateUnits | [string](#string) | | Coordinate units used for board, lengend and image boundaries. | +| boardBounds | [ThermalMapFile.ImageFile.NodeCoordinate](#ThermalMapFile-ImageFile-NodeCoordinate) | repeated | Coordinates of the nodes which make up the board outline. | +| imageBounds | [ThermalMapFile.ImageFile.ImageCoordinate](#ThermalMapFile-ImageFile-ImageCoordinate) | | Coordinates of the board bounds within the image. | +| legendBounds | [ThermalMapFile.ImageFile.LegendCoordinate](#ThermalMapFile-ImageFile-LegendCoordinate) | | Coordinates of the bounds of legend within the image. | +| legendOrientation | [ThermalMapFile.ImageFile.LegendOrientation](#ThermalMapFile-ImageFile-LegendOrientation) | | Specify the legend orientation. | +| minTemperature | [double](#double) | | Minimum temperature value. | +| minTemperatureUnits | [string](#string) | | Units for minimum temperature value. | +| maxTemperature | [double](#double) | | Maximum temperature value. | +| maxTemperatureUnits | [string](#string) | | Units for maximum temperature value. | + + + + + + + + +## ThermalMapFile.ImageFile.ImageCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| imageX | [double](#double) | | X-coordinate of the upper left corner. | +| imageY | [double](#double) | | Y-coordinate of the upper left corner. | +| imageH | [double](#double) | | Height of the image. | +| imageW | [double](#double) | | Width of the image. | + + + + + + + + +## ThermalMapFile.ImageFile.LegendCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| legendX | [double](#double) | | X-coordinate of the upper left corner. | +| legendY | [double](#double) | | Y-coordinate of the upper left corner. | +| legendH | [double](#double) | | Height of the legend. | +| legendW | [double](#double) | | Width of the legend. | + + + + + + + + +## ThermalMapFile.ImageFile.NodeCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| vertexX | [double](#double) | | X-coordinate of the node. | +| vertexY | [double](#double) | | Y-coordinate of the node. | + + + + + + + + +## UpdateThermalMapRequest + +Request to update thermal map files to a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalMapFiles | [ThermalMapFile](#ThermalMapFile) | repeated | Thermal Map files. | + + + + + + + + +## UpdateThermalMapsResponse + +Response from updating thermal map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + + + +## AddStrainMapRequest.StrainMapFile.FileType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| CSV | 0 | Csv file. | +| Excel | 1 | Excel file. | +| Image | 2 | Image file. | + + + + + +## AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendOrientation + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Horizontal | 0 | Horizontal legend orientation. | +| Vertical | 1 | Vertical legend orientation. | + + + + + +## ThermalMapFile.FileType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| CSV | 0 | Csv file. | +| Excel | 1 | Excel file. | +| Image | 2 | Image file. | +| TMAP | 3 | Icepack file. | + + + + + +## ThermalMapFile.ImageFile.LegendOrientation + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Horizontal | 0 | Horizontal legend orientation. | +| Vertical | 1 | Vertical legend orientation. | + + + + + +## ThermalMapFile.ThermalBoardSide + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Bottom | 0 | Bottom side of the board. | +| Both | 1 | Both sides of the board. | +| Top | 2 | Top side of the board. | + + + + + + + + + +## SherlockProjectService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| genReport | [.GenReportRequest](#GenReportRequest) | [.GenReportResponse](#GenReportResponse) stream | Generates the project report and return it via streaming. | +| genCCAReport | [.GenCCAReportRequest](#GenCCAReportRequest) | [.GenCCAReportResponse](#GenCCAReportResponse) stream | Generates the project CCA report and return it via streaming. | +| importODBArchive | [.ImportODBRequest](#ImportODBRequest) | [.ReturnCode](#ReturnCode) | Imports an ODB++ archive. | +| importIPC2581Archive | [.ImportIPC2581Request](#ImportIPC2581Request) | [.ReturnCode](#ReturnCode) | Imports an IPC-2581 archive. | +| importProjectZipArchive | [.ImportProjectZipRequest](#ImportProjectZipRequest) | [.ReturnCode](#ReturnCode) | Imports a zipped project archive -- multiple project mode. | +| importProjectZipArchiveSingleMode | [.ImportProjectZipSingleModeRequest](#ImportProjectZipSingleModeRequest) | [.ReturnCode](#ReturnCode) | Imports a zipped project archive -- single project mode. | +| deleteProject | [.DeleteProjectRequest](#DeleteProjectRequest) | [.ReturnCode](#ReturnCode) | Delete a project from Sherlock. | +| addStrainMap | [.AddStrainMapRequest](#AddStrainMapRequest) | [.AddStrainMapResponse](#AddStrainMapResponse) | Add a strain map files to a Sherlock project. | +| listStrainMaps | [.ListStrainMapsRequest](#ListStrainMapsRequest) | [.ListStrainMapsResponse](#ListStrainMapsResponse) | Returns a list of circuit cards and their assigned strain maps for a given Sherlock project. | +| listCCAs | [.ListCCAsRequest](#ListCCAsRequest) | [.ListCCAsResponse](#ListCCAsResponse) | Returns a list of circuit cards, their properties, and sub-assemblies for a given Sherlock project. | +| addProject | [.AddProjectRequest](#AddProjectRequest) | [.ReturnCode](#ReturnCode) | Add a project to Sherlock. | +| addCCA | [.AddCcaRequest](#AddCcaRequest) | [.ReturnCode](#ReturnCode) | Creates a new circuit card assembly. | +| listThermalMaps | [.ListThermalMapsRequest](#ListThermalMapsRequest) | [.ListThermalMapsResponse](#ListThermalMapsResponse) | Returns a list of thermal map files and their types for a given Sherlock project. | +| updateThermalMaps | [.UpdateThermalMapRequest](#UpdateThermalMapRequest) | [.UpdateThermalMapsResponse](#UpdateThermalMapsResponse) | Update thermal map files to a Sherlock project. | +| addThermalMaps | [.AddThermalMapRequest](#AddThermalMapRequest) | [.AddThermalMapResponse](#AddThermalMapResponse) | Add a thermal map to a Sherlock project. | +| exportProject | [.ExportProjectRequest](#ExportProjectRequest) | [.ReturnCode](#ReturnCode) | Exports project to a zipped archive file. | +| createCCAFromModelingRegion | [.CreateCcaFromModelingRegionRequest](#CreateCcaFromModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Creates a CCA from a given modeling region | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockService.proto.md b/2025R1_Test/sherlock-split-files/SherlockService.proto.md new file mode 100644 index 0000000000..d031cabe4d --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockService.proto.md @@ -0,0 +1,349 @@ +# SherlockService.proto + +Copyright 2020-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + +The APIs in this service should only be used for Sherlock integration with Workbench. + + + + +## ClientMessage + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| clientMessage | [string](#string) | | Incoming message from Workbench in bi-directional stream. | + + + + + + + + +## ExportRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportCcaName | [string](#string) | | CCA name. | +| destGeometryFile | [string](#string) | | Destination directory for exported geometry and materials. | +| systemName | [string](#string) | | gRPC system name. | +| componentName | [string](#string) | | gRPC component name. | +| analysis | [ExportRequest.ExportAnalysis](#ExportRequest-ExportAnalysis) | | Type of analysis to export. | + + + + + + + + +## ExportTraceReinforcementRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportCcaName | [string](#string) | | Name of CCA. | +| destGeometryFile | [string](#string) | | Destination directory for geometry files. | +| systemName | [string](#string) | | gRPC system name. | +| componentName | [string](#string) | | gRPC component name. | + + + + + + + + +## GetCCARequest + + + + + + + + + +## GetCCAResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaNames | [string](#string) | repeated | List of CCA names for a specified project. | + + + + + + + + +## ImportRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| resultFile | [string](#string) | | Name of result file (.rst) to import. | +| projectName | [string](#string) | | Name of project associated with the result file. | +| ccaName | [string](#string) | | Name of CCA associated with the result file. | +| analysis | [ImportRequest.ImportAnalysis](#ImportRequest-ImportAnalysis) | | Type of analysis result. | +| modalResultFile | [string](#string) | | File name of modal result. | +| phaseName | [string](#string) | | The life cycle phase of the event associated with the results file. | +| eventName | [string](#string) | | The life cycle event associated with the results file. | +| modelTransform | [ImportRequest.ModelTransform](#ImportRequest-ModelTransform) | | Model transformation info associated with the results. | +| analysisImports | [ImportRequest.AnalysisImport](#ImportRequest-AnalysisImport) | repeated | List of various analysis results to import and the associated files. | + + + + + + + + +## ImportRequest.AnalysisImport + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of CCA. | +| analysis | [ImportRequest.ImportAnalysis](#ImportRequest-ImportAnalysis) | | Type of analysis result. | +| rsts | [ImportRequest.AnalysisImport.rst](#ImportRequest-AnalysisImport-rst) | repeated | List of results file to import. | +| modelTransform | [ImportRequest.ModelTransform](#ImportRequest-ModelTransform) | | Model transformation info for the imported analysis results. | + + + + + + + + +## ImportRequest.AnalysisImport.rst + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| resultFile | [string](#string) | | Results file to import. | +| modalResultFile | [string](#string) | | Modal results file to import. | +| phaseName | [string](#string) | | The life cycle phase of the event associated with the results file. | +| eventName | [string](#string) | | The life cycle event associated with the results file. | + + + + + + + + +## ImportRequest.ModelTransform + +Indicate the model transform detection to use. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| detectTransform | [ImportRequest.ModelTransform.DetectTransform](#ImportRequest-ModelTransform-DetectTransform) | | Type of model transformation detection to use. | +| transformX | [double](#double) | | Model translation applied in X direction. | +| transformY | [double](#double) | | Model translation applied in Y direction. | +| transformZ | [double](#double) | | Model translation applied in Z direction. | +| transformRotX | [double](#double) | | Model rotation (in degrees) applied in X direction. | +| transformRotY | [double](#double) | | Model rotation (in degrees) applied in Y direction. | +| transformRotZ | [double](#double) | | Model rotation (in degrees) applied in Z direction. | + + + + + + + + +## OpenProjectRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Directory location of the project to open. | + + + + + + + + +## SaveProjectRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Directory location where the project is to be saved. | + + + + + + + + +## ServerMessage + +This is the message that is sent to Workbench whenever a relevant addition/update/deletion is made within Sherlock +that would affect the same project that is open in WB. + +Note that the enum Item refers to Workbench module terminology for the request changes. +These items are in a hierarchy and any changes or modifications flow downstream: +Project -> Setup -> Life Prediction + +If the Project item needs to be updated then that automatically means that +Setup and Life Prediction will be updated at well. Therefore, only one ServerMessage needs to +be sent to Workbench with Item = Project. + +States are all inclusive based on the states that are recognized in Workbench. Some of these may never need to be used +in ServerMessage but the enum contains the complete set just in case they are needed in the future, i.e., if the granularity +of the Sherlock changes become more finely-grained. For now we are using just the Modified state when constructing a +ServerMessage and sending it to WB. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| newState | [ServerMessage.State](#ServerMessage-State) | | The enum represents the states that are recognized in Workbench, inclusive. For now, Sherlock is just returning State.Modified. | +| updatedItem | [ServerMessage.Item](#ServerMessage-Item) | | Represents the first module in Workbench that is affected by the Sherlock change. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +## SetWorkingDirRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Path to set as working directory location for Sherlock projects. | + + + + + + + + + + +## ExportRequest.ExportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NF | 0 | Natural Frequency analysis type. | +| HV | 1 | Harmonic Vibe analysis type. | +| ICT | 2 | ICT Analysis type. | +| SH | 3 | Mechanical Shock analysis type.` | +| RV | 4 | Random Vibe analysis type. | + + + + + +## ImportRequest.ImportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NaturalFreq | 0 | Natural Frequency result type. | +| HarmonicVibe | 1 | Harmonic Vibe result type. | +| ICTAnalysis | 2 | ICT Analysis result type. | +| MechanicalShock | 3 | Mechanical Shock result type. | +| RandomVibe | 4 | Random Vibe result type. | + + + + + +## ImportRequest.ModelTransform.DetectTransform + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| DISABLED | 0 | No model transformation is performed. | +| ENABLED | 1 | Sherlock automatically detects the model transformation. | +| MANUAL | 2 | User provides model transformation parameters. | + + + + + +## ServerMessage.Item + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Project | 0 | Project = WB/Mech Model Change. | +| Setup | 1 | Setup = Sherlock Pre. | +| LifePrediction | 2 | Life Prediction = Sherlock Post Change. | + + + + + +## ServerMessage.State + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Disabled | 0 | Workbench state -- not currently used. | +| EditRequired | 1 | Workbench state -- not currently used. | +| Incomplete | 2 | Workbench state -- not currently used. | +| InputChangesPending | 3 | Workbench state -- not currently used. | +| InternalError | 4 | Workbench state -- not currently used. | +| Interrupted | 5 | Workbench state -- not currently used. | +| Modified | 6 | A change occurred in Sherlock for which Workbench is to be notified. Only state currently used in Sherlock for Workbench notification. | +| OutOfDate | 7 | Workbench state -- not currently used. | +| Unfulfilled | 8 | Workbench state -- not currently used. | +| UpToDate | 9 | Workbench state -- not currently used. | + + + + + + + + + +## SherlockService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| openProject | [.OpenProjectRequest](#OpenProjectRequest) | [.ReturnCode](#ReturnCode) | Opens specific Sherlock project given the full path. | +| saveProject | [.SaveProjectRequest](#SaveProjectRequest) | [.ReturnCode](#ReturnCode) | Saves all Sherlock project files given the destination path. | +| export | [.ExportRequest](#ExportRequest) | [.ReturnCode](#ReturnCode) | Export request for geometry and materials given the full destination directory and file names. | +| importRst | [.ImportRequest](#ImportRequest) | [.ReturnCode](#ReturnCode) | Request for Sherlock to import the given .rst file. | +| getCCA | [.GetCCARequest](#GetCCARequest) | [.GetCCAResponse](#GetCCAResponse) | Returns a list of circuit board names given a project name. | +| exportTraceReinforcement | [.ExportTraceReinforcementRequest](#ExportTraceReinforcementRequest) | [.ReturnCode](#ReturnCode) | Export Trace Reinforcement model request given the full destination directory and file names. | +| isSherlockClientLoading | [.IsSherlockClientLoadingRequest](#IsSherlockClientLoadingRequest) | [.ReturnCode](#ReturnCode) | Check if SherlockClient is still loading. | +| setWorkingDir | [.SetWorkingDirRequest](#SetWorkingDirRequest) | [.ReturnCode](#ReturnCode) | Set working directory. In the case where there is not already a project loaded in Sherlock, this API sets the default project directory for any new project created. In the case where there is already a project loaded in Sherlock, this API reloads the project from the new directory provided and refreshes the Sherlock UI. | +| eventCommunication | [.ClientMessage](#ClientMessage) stream | [.ServerMessage](#ServerMessage) stream | Bi-directional stream between Sherlock and Workbench that notifies Workbench of specific changes/updates made within Sherlock that would affect the same project open in Workbench. | + + + + + + + + diff --git a/2025R1_Test/sherlock-split-files/SherlockStackupService.proto.md b/2025R1_Test/sherlock-split-files/SherlockStackupService.proto.md new file mode 100644 index 0000000000..3f9ac97ae2 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/SherlockStackupService.proto.md @@ -0,0 +1,638 @@ +# SherlockStackupService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +## GenStackupRequest + +Request to generate stackup layers for a CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| boardThickness | [double](#double) | | Board thickness. | +| boardThicknessUnit | [string](#string) | | Board thickness unit. | +| pcbMaterialManufacturer | [string](#string) | | PCB material manufacturer. | +| pcbMaterialGrade | [string](#string) | | PCB material grade. | +| pcbMaterial | [string](#string) | | PCB material. | +| conductorLayersCnt | [int32](#int32) | | Number of conductor layers. | +| signalLayerThickness | [double](#double) | | Signal layer thickness. | +| signalLayerThicknessUnit | [string](#string) | | Signal layer thickness unit. | +| minLaminateThickness | [double](#double) | | Minimum laminate layer thickness. | +| minLaminateThicknessUnit | [string](#string) | | Minimum laminate layer thickness unit. | +| maintainSymmetry | [bool](#bool) | | If set to true, maintain symmetry. | +| powerLayerThickness | [double](#double) | | Power layer thickness. | +| powerLayerThicknessUnit | [string](#string) | | Power layer thickness unit. | + + + + + + + + +## GetLayerCountRequest + +Request the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +## GetLayerCountResponse + +Represents the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| count | [int32](#int32) | | Number of stackup layers. | + + + + + + + + +## GetStackupPropsRequest + +Request a summary of the stackup properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +## GetStackupPropsResponse + +Represents a summary of the stackup properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boardDimension | [string](#string) | | Board dimension. | +| boardThickness | [string](#string) | | Board thickness. | +| density | [string](#string) | | Board density. | +| conductorLayersCnt | [string](#string) | | Number of conductor layers. | +| ctExy | [string](#string) | | CTExy. | +| ctEz | [string](#string) | | CTEz. | +| exy | [string](#string) | | Exy. | +| ez | [string](#string) | | Ez. | + + + + + + + + +## GetTotalConductorThicknessRequest + +Request the total thickness on all conductor layers in a stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | + + + + + + + + +## GetTotalConductorThicknessResponse + +Represents the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| totalThickness | [double](#double) | | Total thickness. | + + + + + + + + +## ListConductorLayersRequest + +Request for a list of conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListConductorLayersResponse + +Represents the properties for all CCAs and their corresponding conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaConductorLayerProps | [ListConductorLayersResponse.CCAConductorLayerProp](#ListConductorLayersResponse-CCAConductorLayerProp) | repeated | List of CCAs and their associated conductor layers for a specified project. | + + + + + + + + +## ListConductorLayersResponse.CCAConductorLayerProp + +Represents a CCA and its conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| conductorLayerProps | [ListConductorLayersResponse.CCAConductorLayerProp.ConductorLayerProp](#ListConductorLayersResponse-CCAConductorLayerProp-ConductorLayerProp) | repeated | List of conductor layers and their associated properties for a specified CCA. | + + + + + + + + +## ListConductorLayersResponse.CCAConductorLayerProp.ConductorLayerProp + +Represents a conductor layer and its properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| layer | [string](#string) | | An internal layer ID associated with this conductor layer. | +| type | [string](#string) | | Layer type (i.e. SIGNAL, POWER, SUBSTRATE). | +| material | [string](#string) | | Name of this conductor material. | +| thickness | [double](#double) | | Conductor layer thickness. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| resinMaterial | [string](#string) | | Resin material. | +| density | [double](#double) | | Layer density. | +| CTExy | [double](#double) | | CTExy. | +| CTEz | [double](#double) | | CTEz. | +| Exy | [double](#double) | | Exy. | +| Ez | [double](#double) | | Ez. | + + + + + + + + +## ListConductorMaterialsRequest + +Request to list valid conductor materials. + + + + + + + + +## ListConductorMaterialsResponse + +Represents a list of valid conductor materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| conductorMaterial | [string](#string) | repeated | Conductor material name. | + + + + + + + + +## ListConstructionStylesRequest + +Request to list valid construction styles. + + + + + + + + +## ListConstructionStylesResponse + +Represents a list of valid construction styles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| constructionStyle | [string](#string) | repeated | Construction style. | + + + + + + + + +## ListFiberMaterialsRequest + +Request to list valid fiber materials. + + + + + + + + +## ListFiberMaterialsResponse + +Represents a list of valid fiber materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| fiberMaterial | [string](#string) | repeated | Fiber material name. | + + + + + + + + +## ListLaminateMaterialsManufacturersRequest + +Request to list valid names of materials manufacturers. + + + + + + + + +## ListLaminateMaterialsManufacturersResponse + +Represents a list of valid names of materials manufacturers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| manufacturer | [string](#string) | repeated | Manufacturer name. | + + + + + + + + +## ListLaminateMaterialsRequest + +Request to list materials from a given manufacturer. +If manufacturer is empty, all manufacturers and their materials will be returned. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| manufacturer | [string](#string) | | Manufacturer name. | + + + + + + + + +## ListLaminateMaterialsResponse + +Represents a list of materials from a given manufacturer. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| manufacturerMaterials | [ListLaminateMaterialsResponse.ManufacturerMaterials](#ListLaminateMaterialsResponse-ManufacturerMaterials) | repeated | List of manufacturers and their associated grades and materials. | + + + + + + + + +## ListLaminateMaterialsResponse.ManufacturerMaterials + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| manufacturer | [string](#string) | | Manufacturer name. | +| gradeMaterials | [ListLaminateMaterialsResponse.ManufacturerMaterials.GradeMaterials](#ListLaminateMaterialsResponse-ManufacturerMaterials-GradeMaterials) | repeated | List of Grades and their associated materials. | + + + + + + + + +## ListLaminateMaterialsResponse.ManufacturerMaterials.GradeMaterials + +Represents a grade and the materials with this grade. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| grade | [string](#string) | | Grade. | +| laminateMaterial | [string](#string) | repeated | Material name. | + + + + + + + + +## ListLaminateThicknessUnitsRequest + +Request to list valid laminate thickness units. + + + + + + + + +## ListLaminateThicknessUnitsResponse + +Represents a list of valid laminate thickness units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| unit | [string](#string) | repeated | Thickness unit. | + + + + + + + + +## ListLaminatesRequest + +Request for a list of laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +## ListLaminatesResponse + +Represents the properties for all CCAs and their corresponding laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaLaminateProps | [ListLaminatesResponse.CCALaminateProp](#ListLaminatesResponse-CCALaminateProp) | repeated | List of CCAs and their corresponding laminate layers. | + + + + + + + + +## ListLaminatesResponse.CCALaminateProp + +Represents a CCA and its laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| laminateProps | [ListLaminatesResponse.CCALaminateProp.LaminateProp](#ListLaminatesResponse-CCALaminateProp-LaminateProp) | repeated | List of laminate layers with associated properties for a specified CCA. | + + + + + + + + +## ListLaminatesResponse.CCALaminateProp.LaminateProp + +Represents a laminate layer and its properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| layer | [string](#string) | | An internal layer ID associated with this laminate layer. | +| manufacturer | [string](#string) | | Manufacturer name of this material. | +| grade | [string](#string) | | Grade of this material. | +| material | [string](#string) | | Name of this material. | +| thickness | [double](#double) | | Laminate thickness. | +| thicknessUnit | [string](#string) | | Laminate thickness unit. | +| constructionStyle | [string](#string) | | Construction style. | +| glassConstructions | [ListLaminatesResponse.CCALaminateProp.LaminateProp.GlassConstruction](#ListLaminatesResponse-CCALaminateProp-LaminateProp-GlassConstruction) | repeated | List of Glass Construction info for a laminate layer. | +| fiberMaterial | [string](#string) | | Fiber material if the construction style is glass. | +| conductorMaterial | [string](#string) | | Conductor material. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| density | [double](#double) | | Layer density. | +| CTExy | [double](#double) | | CTExy. | +| CTEz | [double](#double) | | CTEz. | +| Exy | [double](#double) | | Exy. | +| Ez | [double](#double) | | Ez. | + + + + + + + + +## ListLaminatesResponse.CCALaminateProp.LaminateProp.GlassConstruction + +Represents the layers with a glass construction. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| style | [string](#string) | | Glass construction style. | +| resinPercentage | [double](#double) | | Glass construction resin percentage. | +| thickness | [double](#double) | | Glass construction thickness. | +| thicknessUnit | [string](#string) | | Glass construction thickness unit. | + + + + + + + + +## UpdateConductorLayerRequest + +Represents the conductor layer properties requested to be updated. +To update a thickness, a thickness unit must be provided. +Any property left out or set to "" or 0.0 will not be updated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| layer | [string](#string) | | The layer ID associated with this conductor layer. | +| type | [string](#string) | | Layer type (i.e. SIGNAL, POWER, SUBSTRATE). | +| material | [string](#string) | | Name of this conductor material. | +| thickness | [double](#double) | | Conductor layer thickness. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| resinMaterial | [string](#string) | | Resin material. | + + + + + + + + +## UpdateLaminateRequest + +Represents the laminate properties requested to be updated. +To update the material, valid values must be provided for manufacturer, grade, and material. +To update a thickness, a thickness unit must be provided. +Glass construction should only be set when the construction style is not the "DEFAULT" value. +Any property left out or set to "" or 0.0 will not be updated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| layer | [string](#string) | | The internal layer ID associated with this laminate layer. | +| manufacturer | [string](#string) | | Manufacturer name of this material. Must be provided along with grade and material name. | +| grade | [string](#string) | | Grade of this material. | +| material | [string](#string) | | Name of this material. | +| thickness | [double](#double) | | Laminate thickness. | +| thicknessUnit | [string](#string) | | Laminate thickness unit. | +| constructionStyle | [string](#string) | | Construction style. | +| glassConstruction | [UpdateLaminateRequest.GlassConstruction](#UpdateLaminateRequest-GlassConstruction) | repeated | List of Glass Construction info for a laminate layer. | +| fiberMaterial | [string](#string) | | Fiber material. Only updated if glass construction is selected. | +| conductorMaterial | [string](#string) | | Conductor material. | +| conductorPercent | [string](#string) | | Conductor percentage. | + + + + + + + + +## UpdateLaminateRequest.GlassConstruction + +Represents the layers with a glass construction. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| style | [string](#string) | | Glass construction style. | +| resinPercentage | [double](#double) | | Glass construction resin percentage. | +| thickness | [double](#double) | | Glass construction thickness. | +| thicknessUnit | [string](#string) | | Glass construction thickness unit. | + + + + + + + + + + + + + + +## SherlockStackupService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| listLaminates | [.ListLaminatesRequest](#ListLaminatesRequest) | [.ListLaminatesResponse](#ListLaminatesResponse) | Returns a list of project's CCAs and their laminates. | +| updateLaminate | [.UpdateLaminateRequest](#UpdateLaminateRequest) | [.ReturnCode](#ReturnCode) | Update properties for a given laminate layer. | +| listLaminateThicknessUnits | [.ListLaminateThicknessUnitsRequest](#ListLaminateThicknessUnitsRequest) | [.ListLaminateThicknessUnitsResponse](#ListLaminateThicknessUnitsResponse) | List all the supported laminate layer thickness units. | +| listConductorMaterials | [.ListConductorMaterialsRequest](#ListConductorMaterialsRequest) | [.ListConductorMaterialsResponse](#ListConductorMaterialsResponse) | List all conductor materials. | +| listFiberMaterials | [.ListFiberMaterialsRequest](#ListFiberMaterialsRequest) | [.ListFiberMaterialsResponse](#ListFiberMaterialsResponse) | List all fiber materials. | +| listLaminateMaterialsManufacturers | [.ListLaminateMaterialsManufacturersRequest](#ListLaminateMaterialsManufacturersRequest) | [.ListLaminateMaterialsManufacturersResponse](#ListLaminateMaterialsManufacturersResponse) | List all laminate materials manufacturers. | +| listLaminateMaterials | [.ListLaminateMaterialsRequest](#ListLaminateMaterialsRequest) | [.ListLaminateMaterialsResponse](#ListLaminateMaterialsResponse) | List all laminate materials (both based on manufacturer specified or without). If manufacturer is empty or not provided, then all manufacturers and their laminate materials will be returned. If a manufacturer is provided, then only that manufacturer's laminate materials will be returned. | +| listConstructionStyles | [.ListConstructionStylesRequest](#ListConstructionStylesRequest) | [.ListConstructionStylesResponse](#ListConstructionStylesResponse) | List all construction styles. | +| listConductorLayers | [.ListConductorLayersRequest](#ListConductorLayersRequest) | [.ListConductorLayersResponse](#ListConductorLayersResponse) | Returns a list of project's CCAs and their conductor layers. | +| updateConductorLayer | [.UpdateConductorLayerRequest](#UpdateConductorLayerRequest) | [.ReturnCode](#ReturnCode) | Update properties for a given conductor layer. | +| getLayerCount | [.GetLayerCountRequest](#GetLayerCountRequest) | [.GetLayerCountResponse](#GetLayerCountResponse) | Returns the number of stackup layers. | +| getTotalConductorThickness | [.GetTotalConductorThicknessRequest](#GetTotalConductorThicknessRequest) | [.GetTotalConductorThicknessResponse](#GetTotalConductorThicknessResponse) | Returns the total thickness for all conductor layers. | +| getStackupProps | [.GetStackupPropsRequest](#GetStackupPropsRequest) | [.GetStackupPropsResponse](#GetStackupPropsResponse) | Returns a summary of the stackup properties. | +| genStackup | [.GenStackupRequest](#GenStackupRequest) | [.ReturnCode](#ReturnCode) | Generate stackup layers. | + + + + + diff --git a/2025R1_Test/sherlock-split-files/index.md b/2025R1_Test/sherlock-split-files/index.md new file mode 100644 index 0000000000..35c29a9171 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/index.md @@ -0,0 +1,6375 @@ +# Protocol Documentation + + + + + + + +## SherlockAnalysisService.proto + +@Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### GetHarmonicVibeInputFieldsRequest + +Request to list the valid Harmonic Vibe input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +### GetHarmonicVibeInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Harmonic Vibe input fields. | + + + + + + + + +### GetICTAnalysisInputFieldsRequest + +Request to list the valid ICT analysis input fields given the user configuration. + + + + + + + + +### GetICTAnalysisInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of ICT Analysis input fields. | + + + + + + + + +### GetMechanicalShockInputFieldsRequest + +Request to list the valid mechanical shock input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +### GetMechanicalShockInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Mechanical Shock input fields for a model source. | + + + + + + + + +### GetNaturalFrequencyInputFieldsRequest + +Request to list the valid natural frequency input fields given the user configuration. + + + + + + + + +### GetNaturalFrequencyInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Natural Frequency input fields. | + + + + + + + + +### GetPcbModelingInputFieldsRequest + +Request to list the valid PCB Modeling input fields given the user configuration. + + + + + + + + +### GetPcbModelingInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Pcb Modeling input fields. | + + + + + + + + +### GetRandomVibeInputFieldsRequest + +Request to list the valid random vibe input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +### GetRandomVibeInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Random Vibe input fields. | + + + + + + + + +### GetSolderFatigueInputFieldsRequest + +Request to list the valid solder fatigue input fields given the user configuration. + + + + + + + + +### GetSolderFatigueInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Solder Fatigue input fields. | + + + + + + + + +### RunAnalysisRequest + +Request to run one or more Sherlock analysis given the project path, CCA name, analyses, lifecycle phases and events. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| analyses | [RunAnalysisRequest.Analysis](#RunAnalysisRequest-Analysis) | repeated | List of Analyses to run. | + + + + + + + + +### RunAnalysisRequest.Analysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [RunAnalysisRequest.Analysis.AnalysisType](#RunAnalysisRequest-Analysis-AnalysisType) | | Type of Analysis to run. | +| phases | [RunAnalysisRequest.Analysis.Phase](#RunAnalysisRequest-Analysis-Phase) | repeated | List of Phases for each Analysis to run. | + + + + + + + + +### RunAnalysisRequest.Analysis.Phase + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle phase name. | +| events | [RunAnalysisRequest.Analysis.Phase.Event](#RunAnalysisRequest-Analysis-Phase-Event) | repeated | List of life cycle Events. | + + + + + + + + +### RunAnalysisRequest.Analysis.Phase.Event + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle event name. | + + + + + + + + +### RunStrainMapAnalysisRequest + +Request to run Sherlock strain map analysis given the project name, CCA name, and strain maps. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name of the main CCA for the analysis. | +| strainMapAnalyses | [RunStrainMapAnalysisRequest.StrainMapAnalysis](#RunStrainMapAnalysisRequest-StrainMapAnalysis) | repeated | List of Strain Map Analyses to run. | + + + + + + + + +### RunStrainMapAnalysisRequest.StrainMapAnalysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [RunStrainMapAnalysisRequest.StrainMapAnalysis.AnalysisType](#RunStrainMapAnalysisRequest-StrainMapAnalysis-AnalysisType) | | Type of Strain Map analysis to run. | +| eventStrainMaps | [RunStrainMapAnalysisRequest.StrainMapAnalysis.EventStrainMap](#RunStrainMapAnalysisRequest-StrainMapAnalysis-EventStrainMap) | repeated | List of Strain Map events to run. | + + + + + + + + +### RunStrainMapAnalysisRequest.StrainMapAnalysis.EventStrainMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | Life cycle phase name. | +| eventName | [string](#string) | | Life cycle event name. | +| pcbSide | [string](#string) | | PCB side for the strain map. Supported values are: TOP, BOTTOM. | +| strainMap | [string](#string) | | Strain map assigned to the event. | +| subAssemblyName | [string](#string) | optional | The name of the sub-assembly CCA to be assigned the strain map. | + + + + + + + + +### UpdateHarmonicVibePropsRequest + +Request to update the harmonic vibe analysis properties for one or more CCA's +in the project indicated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| harmonicVibeProperties | [UpdateHarmonicVibePropsRequest.HarmonicVibe](#UpdateHarmonicVibePropsRequest-HarmonicVibe) | repeated | List of HarmonicVibe analysis properties to update. | + + + + + + + + +### UpdateHarmonicVibePropsRequest.HarmonicVibe + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | CCA name for which the harmonic vibe properties are set. | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | +| harmonicVibeCount | [int32](#int32) | optional | Number of harmonic result layers to generate. | +| harmonicVibeDamping | [string](#string) | optional | Modal Damping Ratio(s). | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| filterByEventFrequency | [bool](#bool) | optional | Flag indicating if harmonic results outside selected event range are imported. | +| naturalFreqMin | [uint32](#uint32) | optional | Min Frequency. For NX Nastran analysis only. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. For NX Nastran analysis only. | +| naturalFreqMax | [uint32](#uint32) | optional | Max Frequency. For NX Nastran analysis only. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. For NX Nastran analysis only. | +| reuseModalAnalysis | [bool](#bool) | optional | Reuse Natural Frequency. For NX Nastran analysis only. | + + + + + + + + +### UpdateICTAnalysisPropsRequest + +Request to update ICT Analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| ictAnalysisProperties | [UpdateICTAnalysisPropsRequest.ICTAnalysis](#UpdateICTAnalysisPropsRequest-ICTAnalysis) | repeated | List of ICTAnalysis properties to update for each CCA in a project. | + + + + + + + + +### UpdateICTAnalysisPropsRequest.ICTAnalysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| applicationTime | [double](#double) | optional | Application Time. | +| applicationTimeUnits | [string](#string) | optional | Application Time Units. | +| numberOfEvents | [uint32](#uint32) | optional | Number of Events. | +| partValidationEnabled | [bool](#bool) | optional | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| ictResultCount | [int32](#int32) | optional | Number of ICT layers to generate when using thermal analysis. | + + + + + + + + +### UpdateMechanicalShockPropsRequest + +Request to update the mechanical shock analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| mechanicalShockProperties | [UpdateMechanicalShockPropsRequest.MechanicalShock](#UpdateMechanicalShockPropsRequest-MechanicalShock) | repeated | List of MechanicalShock properties to update. | + + + + + + + + +### UpdateMechanicalShockPropsRequest.MechanicalShock + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| modelSource | [ModelSource](#ModelSource) | optional | Default is GENERATED. | +| shockResultCount | [int32](#int32) | optional | Mechanical Shock Result Count. | +| criticalShockStrain | [double](#double) | optional | Critical Shock Strain. | +| criticalShockStrainUnits | [string](#string) | optional | Critical Shock Strain units. | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| naturalFreqMin | [uint32](#uint32) | optional | Min Frequency. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. | +| naturalFreqMax | [uint32](#uint32) | optional | Max Frequency. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | + + + + + + + + +### UpdateNaturalFrequencyPropsRequest + +Request to update natural frequency analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | | CCA name. | +| naturalFreqCount | [int32](#int32) | | NF Result Count. | +| naturalFreqMin | [double](#double) | | Min Frequency. | +| naturalFreqMinUnits | [string](#string) | | Min Frequency units (HZ, KHZ, MHZ, or GHZ). | +| naturalFreqMax | [double](#double) | | Max Frequency. | +| naturalFreqMaxUnits | [string](#string) | | Max Frequency units (HZ, KHZ, MHZ, or GHZ). | +| partValidationEnabled | [bool](#bool) | | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | | Require Material Assignment. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units (C, F, or K). | + + + + + + + + +### UpdatePartModelingRequest + +Request to update FEA part modeling properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partEnabled | [bool](#bool) | | Whether to enable part modeling. Ignores all other fields if part modeling is disabled. | +| partMinSize | [double](#double) | optional | The minimum part size. | +| partMinSizeUnits | [string](#string) | optional | Units for minimum part size. | +| partElemOrder | [string](#string) | optional | Element order. | +| partMaxEdgeLength | [double](#double) | optional | Maximum mesh size. | +| partMaxEdgeLengthUnits | [string](#string) | optional | Units for maximum mesh size. | +| partMaxVertical | [double](#double) | optional | Vertical mesh size. | +| partMaxVerticalUnits | [string](#string) | optional | Units for vertical mesh size. | +| partResultsFiltered | [bool](#bool) | optional | Whether to enable filtered part results. | + + + + + + + + +### UpdatePartsListValidationPropsRequest + +Request to update the Parts List Validation properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| partsListValidationProperties | [UpdatePartsListValidationPropsRequest.PartsListValidation](#UpdatePartsListValidationPropsRequest-PartsListValidation) | repeated | Properties for each CCA in the project. | + + + + + + + + +### UpdatePartsListValidationPropsRequest.PartsListValidation + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| partLibrary | [string](#string) | optional | Part library name. | +| processUseAVL | [bool](#bool) | optional | Process option to use AVL. | +| processUseWizard | [bool](#bool) | optional | Process option to use Wizard. | +| processCheckConfirmedProperties | [bool](#bool) | optional | Process option to check confirmed properties. | +| processCheckPartNumbers | [bool](#bool) | optional | Process option to check part numbers. | +| matching | [MatchingMode](#MatchingMode) | optional | Matching type. | +| avlRequireInternalPartNumber | [bool](#bool) | optional | AVL require internal part number. | +| avlRequireApprovedDescription | [bool](#bool) | optional | AVL require approved description. | +| avlRequireApprovedManufacturer | [bool](#bool) | optional | AVL require approved manufacturer. | + + + + + + + + +### UpdatePcbModelingPropsRequest + +Request to update FEA analysis PCB Modeling properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaNames | [string](#string) | repeated | The CCA names for which to assign the PCB modeling parameters. | +| analyses | [UpdatePcbModelingPropsRequest.Analysis](#UpdatePcbModelingPropsRequest-Analysis) | repeated | List of Analysis message types. | + + + + + + + + +### UpdatePcbModelingPropsRequest.Analysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [UpdatePcbModelingPropsRequest.Analysis.AnalysisType](#UpdatePcbModelingPropsRequest-Analysis-AnalysisType) | | The type of analysis for which PCB modeling properties apply. | +| modelType | [UpdatePcbModelingPropsRequest.Analysis.PcbModelType](#UpdatePcbModelingPropsRequest-Analysis-PcbModelType) | | The PCB modeling mesh type. | +| modelingRegionEnabled | [bool](#bool) | | Indicates if modeling regions are enabled. | +| pcbMaterialModel | [UpdatePcbModelingPropsRequest.Analysis.PcbMaterialModel](#UpdatePcbModelingPropsRequest-Analysis-PcbMaterialModel) | | The PCB modeling PCB model type. | +| pcbMaxMaterials | [int32](#int32) | optional | The number of PCB materials for Uniform Elements and Layered Elements PCB model types. | +| pcbElemOrder | [ElementOrder](#ElementOrder) | | The element order for PCB elements. | +| pcbMaxEdgeLength | [double](#double) | | The maximum mesh size for PCB elements. | +| pcbMaxEdgeLengthUnits | [string](#string) | | The length units for the maximum mesh size. | +| pcbMaxVertical | [double](#double) | | The maximum vertical mesh size for PCB elements. | +| pcbMaxVerticalUnits | [string](#string) | | The length units for the maximum vertical mesh size. | +| quadsPreferred | [bool](#bool) | | Indicates that the meshing engine should attempt to generate quad-shaped elements when creating the mesh. | + + + + + + + + +### UpdateRandomVibePropsRequest + +Request to update random vibe analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | | CCA name. | +| randomVibeDamping | [string](#string) | optional | Modal Damping Ratio(s). | +| naturalFreqMin | [double](#double) | optional | Min Frequency. For NX Nastran analysis only. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. For NX Nastran analysis only. | +| naturalFreqMax | [double](#double) | optional | Max Frequency. For NX Nastran analysis only. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. For NX Nastran analysis only. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | +| partValidationEnabled | [bool](#bool) | optional | Part Validation. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| reuseModalAnalysis | [bool](#bool) | optional | Reuse Natural Frequency. For NX Nastran analysis only. | +| performNFFreqRangeCheck | [bool](#bool) | optional | Frequency Range Check. For NX Nastran analysis only. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Require Material Assignment. | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | +| strainMapNaturalFreqs | [string](#string) | optional | Comma-separated list of natural frequencies for strain map analysis. | + + + + + + + + +### UpdateSolderFatiguePropsRequest + +Request to update solder fatigue properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| solderFatigueProperties | [UpdateSolderFatiguePropsRequest.SolderFatigue](#UpdateSolderFatiguePropsRequest-SolderFatigue) | repeated | List of SolderFatigue properties to update for a CCA. | + + + + + + + + +### UpdateSolderFatiguePropsRequest.SolderFatigue + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| solderMaterial | [string](#string) | optional | Name of the solder material. | +| partTemp | [double](#double) | optional | Part temperature rise. | +| partTempUnits | [string](#string) | optional | Part temperature rise units. | +| partTempRiseMinEnabled | [bool](#bool) | optional | Flag indicating if part temperature minimum rise should be enabled. | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | + + + + + + + + +### UpdateThermalMechPropsRequest + +Request to update thermal mech analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | repeated | CCA names. | +| thermalResultCount | [int32](#int32) | | Thermal Mech Result Count. | +| partValidationEnabled | [bool](#bool) | | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | | Require Material Assignment. | + + + + + + + + + + +### ElementOrder + +Enumeration defining the types of supported element orders. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownOrder | 0 | Default enum to catch invalid element order. | +| Linear | 1 | Enum for first order linear elements. | +| Quadratic | 2 | Enum for second order quadratic elements. | +| SolidShell | 3 | Enum for solid shell elements. | + + + + + +### ModelSource + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid source. | +| GENERATED | 1 | Generated analysis model source. | +| STRAIN_MAP | 2 | Strain map analysis model source. | + + + + + +### RunAnalysisRequest.Analysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid analysis. | +| NaturalFreq | 1 | Enum for the Natural Frequency analysis. | +| HarmonicVibe | 2 | Enum for the Harmonic Vibe analysis. | +| ICTAnalysis | 3 | Enum for the ICT analysis. | +| MechanicalShock | 4 | Enum for the Mechanical Shock analysis. | +| RandomVibe | 5 | Enum for the Random Vibe analysis. | +| ComponentFailureMode | 7 | Enum for the Component Failure Mechanism analysis. | +| DFMEAModule | 8 | Enum for the DFMEA analysis. | +| PTHFatigue | 9 | Enum for the PTH Fatigue analysis. | +| PartValidation | 10 | Enum for the Part Validation analysis. | +| SemiconductorWearout | 11 | Enum for the Semiconductor Wearout analysis. | +| SolderJointFatigue | 12 | Enum for the Solder Fatigue analysis. | +| ThermalDerating | 13 | Enum for the Thermal Derating analysis. | +| ThermalMech | 14 | Enum for the Thermal Mech analysis. | + + + + + +### RunStrainMapAnalysisRequest.StrainMapAnalysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid analysis. | +| RandomVibe | 1 | Enum for the Random Vibe analysis. | +| MechanicalShock | 2 | Enum for Mechanical Shock analysis. | + + + + + +### UpdatePcbModelingPropsRequest.Analysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownAnalysisType | 0 | Default enum to catch invalid analysis. | +| HarmonicVibe | 1 | Enum for the Harmonic Vibe analysis. | +| ICTAnalysis | 2 | Enum for the ICT analysis. | +| MechanicalShock | 3 | Enum for the Mechanical Shock analysis. | +| NaturalFreq | 4 | Enum for the Natural Frequency analysis. | +| RandomVibe | 5 | Enum for the Random Vibe analysis. | +| ThermalMech | 6 | Enum for the Thermal Mech analysis. | + + + + + +### UpdatePcbModelingPropsRequest.Analysis.PcbMaterialModel + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownPcbModel | 0 | Default enum to catch invalid PCB model. | +| Uniform | 1 | Enum for uniform PCB model. | +| Layered | 2 | Enum for layered PCB model. | +| UniformElements | 3 | Enum for uniform elements PCB model. | +| LayeredElements | 4 | Enum for layered elements PCB model. | + + + + + +### UpdatePcbModelingPropsRequest.Analysis.PcbModelType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownMeshType | 0 | Default enum to catch invalid mesh type. | +| Bonded | 1 | Bonded FEA model. | + + + + + + + + + +### SherlockAnalysisService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| runAnalysis | [.RunAnalysisRequest](#RunAnalysisRequest) | [.ReturnCode](#ReturnCode) | Runs one or more Sherlock analysis. | +| runStrainMapAnalysis | [.RunStrainMapAnalysisRequest](#RunStrainMapAnalysisRequest) | [.ReturnCode](#ReturnCode) | Run Sherlock strain map analysis. | +| getHarmonicVibeInputFields | [.GetHarmonicVibeInputFieldsRequest](#GetHarmonicVibeInputFieldsRequest) | [.GetHarmonicVibeInputFieldsResponse](#GetHarmonicVibeInputFieldsResponse) | Returns the list of valid harmonic vibe input fields for the provided model source and user configuration. | +| updateHarmonicVibeProps | [.UpdateHarmonicVibePropsRequest](#UpdateHarmonicVibePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for harmonic vibe analysis. | +| getRandomVibeInputFields | [.GetRandomVibeInputFieldsRequest](#GetRandomVibeInputFieldsRequest) | [.GetRandomVibeInputFieldsResponse](#GetRandomVibeInputFieldsResponse) | Returns the list of valid Random Vibe input fields for the provided model source and user configuration. | +| updateRandomVibeProps | [.UpdateRandomVibePropsRequest](#UpdateRandomVibePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for random vibe analysis. | +| getMechanicalShockInputFields | [.GetMechanicalShockInputFieldsRequest](#GetMechanicalShockInputFieldsRequest) | [.GetMechanicalShockInputFieldsResponse](#GetMechanicalShockInputFieldsResponse) | Returns the list of valid mechanical shock input fields for the provided model source and user configuration. | +| updateMechanicalShockProps | [.UpdateMechanicalShockPropsRequest](#UpdateMechanicalShockPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for mechanical shock analysis. | +| updateSolderFatigueProps | [.UpdateSolderFatiguePropsRequest](#UpdateSolderFatiguePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for solder fatigue analysis. | +| getNaturalFrequencyInputFields | [.GetNaturalFrequencyInputFieldsRequest](#GetNaturalFrequencyInputFieldsRequest) | [.GetNaturalFrequencyInputFieldsResponse](#GetNaturalFrequencyInputFieldsResponse) | Returns the list of valid natural frequency property fields given the user configuration. | +| updateNaturalFrequencyProps | [.UpdateNaturalFrequencyPropsRequest](#UpdateNaturalFrequencyPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for natural frequency analysis. | +| updateThermalMechProps | [.UpdateThermalMechPropsRequest](#UpdateThermalMechPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for thermal mech analysis. | +| getPcbModelingInputFields | [.GetPcbModelingInputFieldsRequest](#GetPcbModelingInputFieldsRequest) | [.GetPcbModelingInputFieldsResponse](#GetPcbModelingInputFieldsResponse) | Returns the list of valid PCB modeling property field. | +| updatePcbModelingProps | [.UpdatePcbModelingPropsRequest](#UpdatePcbModelingPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the PCB modeling properties for the provided analysis types. | +| getSolderFatigueInputFields | [.GetSolderFatigueInputFieldsRequest](#GetSolderFatigueInputFieldsRequest) | [.GetSolderFatigueInputFieldsResponse](#GetSolderFatigueInputFieldsResponse) | Returns the list of valid solder fatigue property fields given the user configuration. | +| updatePartModelingProperties | [.UpdatePartModelingRequest](#UpdatePartModelingRequest) | [.ReturnCode](#ReturnCode) | Updates the part modeling properties for a given project's CCA. | +| getICTAnalysisInputFields | [.GetICTAnalysisInputFieldsRequest](#GetICTAnalysisInputFieldsRequest) | [.GetICTAnalysisInputFieldsResponse](#GetICTAnalysisInputFieldsResponse) | Returns the list of valid ICT analysis property fields given the user configuration. | +| updateICTAnalysisProps | [.UpdateICTAnalysisPropsRequest](#UpdateICTAnalysisPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for ICT analysis. | +| updatePartsListValidationProps | [.UpdatePartsListValidationPropsRequest](#UpdatePartsListValidationPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for part list validation analysis. | + + + + + + + + +## SherlockCommonService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### ExitRequest + +Request to exit the gRPC connection. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| closeSherlockClient | [bool](#bool) | | If set to true, exits the Sherlock client if it is opened. Otherwise, just closes the gRPC connection. | + + + + + + + + +### GetSoldersRequest + +Request for a list of valid solder materials. + + + + + + + + +### GetSoldersResponse + +Represents a list of valid solder materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| solderName | [string](#string) | repeated | List of valid solder materials. | + + + + + + + + +### HealthCheckRequest + +Request to check if the gRPC connection is open. + + + + + + + + +### HealthCheckResponse + +Represents whether the gRPC connection is open. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| status | [HealthCheckResponse.ServingStatus](#HealthCheckResponse-ServingStatus) | | Enum representing connection status. | +| port | [int32](#int32) | | Listening port number on server. | + + + + + + + + +### IsSherlockClientLoadingRequest + +Check if the Sherlock client is still loading. + + + + + + + + +### ListUnitsRequest + +Request for a list of valid units of the provided unit type. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| unitType | [ListUnitsRequest.UnitType](#ListUnitsRequest-UnitType) | | Unit type to request valid units of. | + + + + + + + + +### ListUnitsResponse + +Represents a list of valid units for the provided unit type. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | List of valid units for the requested type. | + + + + + + + + +### Measurement + +Represents a common measurement with a value and a unit + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Numerical value of a measurement. | +| units | [string](#string) | | Units of the numerical value. | + + + + + + + + +### ReturnCode + +Status response of a message. A value of 0 indicates a successful request. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [int32](#int32) | | Status code of response. A value of 0 indicates success, -1 indicates error. | +| message | [string](#string) | | Message indicating the status of response including any error. | + + + + + + + + +### SherlockInfoRequest + +Request to receive Sherlock version and configuration data. + + + + + + + + +### SherlockInfoResponse + +Represents Sherlock version and configuration data. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| releaseVersion | [string](#string) | | The current version of Sherlock, formatted as: YYYY R# (Ex. "2025 R1") | +| defaultProjectDir | [string](#string) | | The project directory currently used by Sherlock. | +| isSingleProjectMode | [bool](#bool) | | When true, indicates that Sherlock is in single-project mode. When false, indicates that Sherlock is in multi-project mode. | + + + + + + + + + + +### HealthCheckResponse.ServingStatus + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Indicates an unknown connection status. | +| SERVING | 1 | Indicates the connection is up and server is listening. | +| NOT_SERVING | 2 | Indicates connection with server is closed. | + + + + + +### ListUnitsRequest.UnitType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Indicates an unknown unit type. | +| ACCEL_DENSITY | 1 | Units used for acceleration density. | +| ACCELERATION | 2 | Units used for acceleration. | +| AREA | 3 | Units used for area. | +| BANDWIDTH | 4 | Units used for bandwidth. | +| CAPACITANCE | 5 | Units used for electrical capacitance. | +| CTE | 6 | Units used for material CTE. | +| CURRENT | 7 | Units used for electrical current. | +| DENSITY | 8 | Units used for density. | +| DISP_DENSITY | 9 | Units used for displacement density. | +| FORCE | 10 | Units used for force. | +| FREQUENCY | 11 | Units used for frequency. | +| INDUCTANCE | 12 | Units used for inductance. | +| LENGTH | 13 | Units used for length. | +| POWER | 14 | Units used for electrical power. | +| RESISTANCE | 15 | Units used for electrical resistance. | +| SIZE | 16 | Units used for size. | +| SPECIFIC_HEAT | 17 | Units used for specific heat. | +| STRAIN | 18 | Units used for strain. | +| STRESS | 19 | Units used for stress. | +| TEMPERATURE | 20 | Units used for temperature. | +| THERMAL_CONDUCTIVITY | 21 | Units used for thermal conductivity. | +| THERMAL_RESISTANCE | 22 | Units used for thermal resistance. | +| TIME | 23 | Units used for time. | +| VELOCITY | 24 | Units used for velocity. | +| VELOCITY_DENSITY | 25 | Units used for velocity density. | +| VOLTAGE | 26 | Units used for electrical voltage. | +| VOLUME | 27 | Units used for volume. | +| WEIGHT | 28 | Units used for weight. | + + + + + +### MatchingMode + +Determines how parts in the parts list are matched against parts +in the AVL or Part Library. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Both | 0 | Matches both part number and manufacturer. | +| Part | 1 | Matches part number only. | + + + + + +### TableDelimiter + +Types of delimiters that can be used for exporting tables + +| Name | Number | Description | +| ---- | ------ | ----------- | +| COMMA | 0 | Represents ',' delimiter. | +| SPACE | 1 | Represents ' ' delimiter. | +| TAB | 2 | Represents tab key delimiter. | +| SEMICOLON | 3 | Represents ';' delimiter. | + + + + + + + + + +### SherlockCommonService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| check | [.HealthCheckRequest](#HealthCheckRequest) | [.HealthCheckResponse](#HealthCheckResponse) | Returns health status of gRPC server. | +| exit | [.ExitRequest](#ExitRequest) | [.ReturnCode](#ReturnCode) | Signals for gRPC connection to shutdown. | +| isSherlockClientLoading | [.IsSherlockClientLoadingRequest](#IsSherlockClientLoadingRequest) | [.ReturnCode](#ReturnCode) | Check if the Sherlock client is still loading. | +| listUnits | [.ListUnitsRequest](#ListUnitsRequest) | [.ListUnitsResponse](#ListUnitsResponse) | Returns a list of valid units of the provided unit type. | +| getSolders | [.GetSoldersRequest](#GetSoldersRequest) | [.GetSoldersResponse](#GetSoldersResponse) | Returns a list of valid solder materials. | +| getSherlockInfo | [.SherlockInfoRequest](#SherlockInfoRequest) | [.SherlockInfoResponse](#SherlockInfoResponse) | Returns meta data about Sherlock. | + + + + + + + + +## SherlockLayerService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### AddModelingRegionRequest + +Request to add one or more modeling regions to a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project to add the modeling regions to. | +| modelingRegions | [ModelingRegion](#ModelingRegion) | repeated | List of modeling regions to add to the project. | + + + + + + + + +### AddPottingRegionRequest + +Request to add a potting region. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project to add the potting regions to. | +| pottingRegions | [AddPottingRegionRequest.PottingRegion](#AddPottingRegionRequest-PottingRegion) | repeated | The potting regions to add. | + + + + + + + + +### AddPottingRegionRequest.PottingRegion + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The name of the CCA. | +| pottingID | [string](#string) | optional | The potting ID, must be unique. | +| pottingSide | [string](#string) | optional | The potting side, options are "TOP", "BOT", or "BOTTOM". | +| pottingMaterial | [string](#string) | optional | The potting material. | +| pottingUnits | [string](#string) | optional | The units to use for the potting region. | +| pottingThickness | [double](#double) | optional | The potting thickness. | +| pottingStandoff | [double](#double) | optional | The potting standoff. | +| polygonalShape | [PolygonalShape](#PolygonalShape) | | Used to add a region with a polygonal shape. | +| rectangularShape | [RectangularShape](#RectangularShape) | | Used to add a region with a rectangular shape. | +| slotShape | [SlotShape](#SlotShape) | | Used to add a region with a slot shape. | +| circularShape | [CircularShape](#CircularShape) | | Used to add a region with a circular shape. | +| pCBShape | [PCBShape](#PCBShape) | | Used to add a region with a PCB shape. | + + + + + + + + +### CircularShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| diameter | [double](#double) | optional | The diameter of the circle. | +| nodeCount | [uint32](#uint32) | optional | The number of nodes. | +| centerX | [double](#double) | optional | The x coordinate of the center of the circle. | +| centerY | [double](#double) | optional | The x coordinate of the center of the circle. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +### CopyModelingRegionRequest + +Request to copy one or more modeling regions in a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| copyRegions | [CopyModelingRegionRequest.CopyModelingRegionInfo](#CopyModelingRegionRequest-CopyModelingRegionInfo) | repeated | List of modeling regions to copy along with their corresponding "copy to" parameters. | + + + + + + + + +### CopyModelingRegionRequest.CopyModelingRegionInfo + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| regionId | [string](#string) | | Region ID of the existing modeling region to copy. | +| regionIdCopy | [string](#string) | | Region ID of the modeling region copy. Must be unique. | +| centerX | [double](#double) | | The center x coordinate of the modeling region copy -- used for location placement in the Layer Viewer. | +| centerY | [double](#double) | | The center y coordinate of the modeling region copy -- used for location placement in the Layer Viewer. | + + + + + + + + +### DeleteAllICTFixturesRequest + +Request to delete all ICT fixtures in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### DeleteAllMountPointsRequest + +Request to delete all mount points in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### DeleteAllTestPointsRequest + +Request to delete all ICT fixtures in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### DeleteModelingRegionRequest + +Request to delete one or more modeling regions for a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| deleteRegions | [DeleteModelingRegionRequest.DeleteModelingRegionInfo](#DeleteModelingRegionRequest-DeleteModelingRegionInfo) | repeated | List of modeling regions to delete in the project. | + + + + + + + + +### DeleteModelingRegionRequest.DeleteModelingRegionInfo + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| regionId | [string](#string) | | Unique region ID of the modeling region to delete. | + + + + + + + + +### ExportAllICTFixturesRequest + +Request to export all ICT fixtures and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| units | [string](#string) | | Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +### ExportAllMountPointsRequest + +Request to export all mount points and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| units | [string](#string) | | Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +### ExportAllTestPointsRequest + +Request to export all test points and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| lengthUnits | [string](#string) | | Length Units used in exporting. | +| displacementUnits | [string](#string) | | Displacement Units used in exporting. | +| forceUnits | [string](#string) | | Force Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +### GetMountPointBoundariesRequest + +Request to list the valid mount point boundaries. + + + + + + + + +### GetMountPointBoundariesResponse + +Represents a list of valid mount point boundaries. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boundary | [string](#string) | repeated | Mount Point boundary. | + + + + + + + + +### GetMountPointChassisMaterialsRequest + +Request to list the valid mount point chassis materials. + + + + + + + + +### GetMountPointChassisMaterialsResponse + +Represents a list of valid mount point chassis materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| chassisMaterial | [string](#string) | repeated | Mount Point chassis material. | + + + + + + + + +### GetMountPointShapeTypesRequest + +Request to list the valid mount point shape types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| mountPointType | [string](#string) | | Mount Point Type. Supported values are: Mount Hole, Mount Pad, Standoff, and Support Pin. | + + + + + + + + +### GetMountPointShapeTypesResponse + +Represents a list of valid mount point shape types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| type | [string](#string) | repeated | Mount Point Shape Type. | + + + + + + + + +### GetMountPointSidesRequest + +Request to list the valid mount point sides. + + + + + + + + +### GetMountPointSidesResponse + +Represents a list of valid mount point sides. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| side | [string](#string) | repeated | Mount Point side. | + + + + + + + + +### GetMountPointTypesRequest + +Request to list the valid mount point types. + + + + + + + + +### GetMountPointTypesResponse + +Represents a list of valid mount point types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| type | [string](#string) | repeated | Mount Point Type. | + + + + + + + + +### GetMountPointUnitsRequest + +Request to list the valid mount point units. + + + + + + + + +### GetMountPointUnitsResponse + +Represents a list of valid mount point units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | Mount Point units. | + + + + + + + + +### GetMountPointsPropertiesRequest + +Request to list the valid mount point chassis materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| mountPointIDs | [string](#string) | | A comma separated list of mount point id for a list of mount point, or a mount id for one part. | + + + + + + + + +### GetMountPointsPropertiesResponse + +Represents a list of valid mount point properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| mountPointsProperties | [MountPointProperties](#MountPointProperties) | repeated | Mount point properties. | + + + + + + + + +### ModelingRegion + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | optional | Name of the CCA. | +| regionId | [string](#string) | optional | Unique modeling region ID. | +| regionUnits | [string](#string) | optional | Modeling region units. | +| modelMode | [ModelingRegion.ModelingMode](#ModelingRegion-ModelingMode) | optional | Mode that specified how the region is used. | +| polygonalShape | [PolygonalShape](#PolygonalShape) | | Defined by N points that form a convex polygon. | +| rectangularShape | [RectangularShape](#RectangularShape) | | Defined by 4 points that form a rectangle. | +| slotShape | [SlotShape](#SlotShape) | | Defined by 8 points that form a rectangle with rounded ends. | +| circularShape | [CircularShape](#CircularShape) | | Defined by N points that form a circle. | +| pcbModelProps | [ModelingRegion.PCBModelingProperties](#ModelingRegion-PCBModelingProperties) | optional | Mesh properties for the modeling region. | +| traceModelProps | [ModelingRegion.TraceModelingProperties](#ModelingRegion-TraceModelingProperties) | optional | Trace modeling properties for the region. | +| regionIdReplacement | [string](#string) | optional | Represents a unique region id that will replace the existing regionId value during | + + + + + + + + +### ModelingRegion.PCBModelingProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportModelType | [ModelingRegion.PCBModelingProperties.ExportModelType](#ModelingRegion-PCBModelingProperties-ExportModelType) | | The type of model to be generated for a given modeling region. | +| elemOrder | [ModelingRegion.ElementOrder](#ModelingRegion-ElementOrder) | | The type of 3D elements to be created for the PCB in the modeling region. | +| maxMeshSize | [double](#double) | | The maximum size of the mesh to be used in the region. | +| maxMeshSizeUnits | [string](#string) | | Units for the maximum mesh size. | +| quadsPreferred | [bool](#bool) | | If true, then the meshing engine should attempt to generate quad-shaped elements when creating the mesh. | + + + + + + + + +### ModelingRegion.TraceModelingProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceModelType | [ModelingRegion.TraceModelingProperties.TraceModelingType](#ModelingRegion-TraceModelingProperties-TraceModelingType) | | Specifies if trace modeling should be performed inside of the region. | +| elemOrder | [ModelingRegion.ElementOrder](#ModelingRegion-ElementOrder) | optional | The type of 3D elements to be created for traces in the region when trace modeling is enabled. | +| traceMeshSize | [double](#double) | optional | The maximum mesh size to be used in the region when trace modeling is enabled. | +| traceMeshSizeUnits | [string](#string) | optional | Units for the maximum mesh size when trace modeling is enabled. | + + + + + + + + +### MountPointProperties + +Properties of mount point, the properties may varies from the mount point type and mount point shape. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ID | [string](#string) | | Mount point ID. | +| type | [string](#string) | | Mount point type. | +| shape | [string](#string) | | Shape type. | +| units | [string](#string) | | Mount point units. | +| x | [string](#string) | | Center X. | +| y | [string](#string) | | Center Y. | +| length | [string](#string) | | Length. | +| width | [string](#string) | | Width. | +| diameter | [string](#string) | | Diameter. | +| nodes | [string](#string) | | # of nodes. | +| rotation | [string](#string) | | Rotation in degrees. | +| side | [string](#string) | | Mount point side. | +| height | [string](#string) | | Mount point height. | +| material | [string](#string) | | Mount point material. | +| boundary | [string](#string) | | Boundary Pt(s). | +| constraints | [string](#string) | | FEA constraints. | +| polygon | [string](#string) | | Coordinates of points. | +| state | [string](#string) | | Mount point state. | +| chassisMaterial | [string](#string) | | Chassis material. | + + + + + + + + +### PCBShape + + + + + + + + + +### PolygonalShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| points | [PolygonalShape.Point](#PolygonalShape-Point) | repeated | The points used to define the polygonal shape, must be >= 3. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +### PolygonalShape.Point + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| x | [double](#double) | | The x coordinate of the point. | +| y | [double](#double) | | The y coordinate of the point. | + + + + + + + + +### RectangularShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| length | [double](#double) | optional | The length of the rectangle. | +| width | [double](#double) | optional | The width of the rectangle. | +| centerX | [double](#double) | optional | The x coordinate of the center of the rectangle. | +| centerY | [double](#double) | optional | The y coordinate of the center of the rectangle. | +| rotation | [double](#double) | optional | The rotation of the rectangle in degrees. | + + + + + + + + +### SlotShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| length | [double](#double) | optional | The length of the slot shape. | +| width | [double](#double) | optional | The width of the slot shape. | +| nodeCount | [uint32](#uint32) | optional | The number of nodes. | +| centerX | [double](#double) | optional | The x coordinate of the center of the slot shape. | +| centerY | [double](#double) | optional | The x coordinate of the center of the slot shape. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +### UpdateICTFixturesByFileRequest + +Request to update ICT fixtures properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the ICT fixtures properties. | + + + + + + + + +### UpdateICTFixturesResponse + +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | ICT fixtures update error messages. | + + + + + + + + +### UpdateModelingRegionRequest + +Request to update one or more modeling regions for a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| modelingRegions | [ModelingRegion](#ModelingRegion) | repeated | List of modeling regions to update in the project. The regionId for | + + + + + + + + +### UpdateMountPointsByFileRequest + +Request to update mount points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the mount points properties. | + + + + + + + + +### UpdateMountPointsRequest + +Request to update mount points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| mountPointsProperties | [MountPointProperties](#MountPointProperties) | repeated | Mount point properties. | + + + + + + + + +### UpdateMountPointsResponse + +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Mount Points update error messages. | + + + + + + + + +### UpdateTestPointsByFileRequest + +Request to update test points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the test points properties. | + + + + + + + + +### UpdateTestPointsResponse + +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Test Points update error messages. | + + + + + + + + + + +### ModelingRegion.ElementOrder + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| First_Order | 0 | First order (Linear) 3D elements should be created for the PCB in the modeling region. | +| Second_Order | 1 | Second order (Quadratic) 3D elements should be created for the PCB in the modeling region. | +| Solid_Shell | 2 | Used for relatively flat elements, like those found in a PCB layer to reduce modeling generation time. | + + + + + +### ModelingRegion.ModelingMode + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Enabled | 0 | Use the modeling region. | +| Disabled | 1 | Ignore the modeling region. | +| Excluded | 2 | Don't generate any elements for the region. | + + + + + +### ModelingRegion.PCBModelingProperties.ExportModelType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Default | 0 | Region type is based on the Mesh Type property defined in the PCB Modeling tab in the FEA Model Export dialog. | +| Sherlock | 1 | Use mesh elements generated by Sherlock to model the region. | +| Sweep | 2 | Use mesh elements generated by the FEA tool to model the region. | +| None | 3 | Define only geometric volumes for the region, without generating mesh elements. | + + + + + +### ModelingRegion.TraceModelingProperties.TraceModelingType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Default | 0 | Trace modeling type is based on the Trace Modeling property defined in the Trace Modeling tab in the FEA Model Export dialog. | +| Enabled | 1 | Trace modeling is enabled for this region. | +| Disabled | 2 | Trace modeling is disabled for this region. | + + + + + + + + + +### SherlockLayerService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| addPottingRegion | [.AddPottingRegionRequest](#AddPottingRegionRequest) | [.ReturnCode](#ReturnCode) | Add a potting region with the specified shape and properties. | +| deleteAllICTFixtures | [.DeleteAllICTFixturesRequest](#DeleteAllICTFixturesRequest) | [.ReturnCode](#ReturnCode) | Delete all ICT fixtures in specific CCA of specific project. | +| deleteAllMountPoints | [.DeleteAllMountPointsRequest](#DeleteAllMountPointsRequest) | [.ReturnCode](#ReturnCode) | Delete all mount points in specific CCA of specific project. | +| deleteAllTestPoints | [.DeleteAllTestPointsRequest](#DeleteAllTestPointsRequest) | [.ReturnCode](#ReturnCode) | Delete all test points in specific CCA of specific project. | +| exportAllMountPoints | [.ExportAllMountPointsRequest](#ExportAllMountPointsRequest) | [.ReturnCode](#ReturnCode) | Export all mount points and their properties into a CSV formatted file. | +| exportAllICTFixtures | [.ExportAllICTFixturesRequest](#ExportAllICTFixturesRequest) | [.ReturnCode](#ReturnCode) | Export all ICT fixtures and their properties into a CSV formatted file. | +| exportAllTestPoints | [.ExportAllTestPointsRequest](#ExportAllTestPointsRequest) | [.ReturnCode](#ReturnCode) | Export all test points and their properties into a CSV formatted file. | +| getMountPointBoundaries | [.GetMountPointBoundariesRequest](#GetMountPointBoundariesRequest) | [.GetMountPointBoundariesResponse](#GetMountPointBoundariesResponse) | Get a list of valid mount point boundaries. | +| getMountPointChassisMaterials | [.GetMountPointChassisMaterialsRequest](#GetMountPointChassisMaterialsRequest) | [.GetMountPointChassisMaterialsResponse](#GetMountPointChassisMaterialsResponse) | Get a list of valid mount point chassis materials. | +| getMountPointsProperties | [.GetMountPointsPropertiesRequest](#GetMountPointsPropertiesRequest) | [.GetMountPointsPropertiesResponse](#GetMountPointsPropertiesResponse) | Get a list of valid mount point properties. | +| getMountPointShapeTypes | [.GetMountPointShapeTypesRequest](#GetMountPointShapeTypesRequest) | [.GetMountPointShapeTypesResponse](#GetMountPointShapeTypesResponse) | Get a list of valid mount point shape type values. | +| getMountPointSides | [.GetMountPointSidesRequest](#GetMountPointSidesRequest) | [.GetMountPointSidesResponse](#GetMountPointSidesResponse) | Get a list of valid mount point sides. | +| getMountPointTypes | [.GetMountPointTypesRequest](#GetMountPointTypesRequest) | [.GetMountPointTypesResponse](#GetMountPointTypesResponse) | Get a list of valid mount point type values. | +| getMountPointUnits | [.GetMountPointUnitsRequest](#GetMountPointUnitsRequest) | [.GetMountPointUnitsResponse](#GetMountPointUnitsResponse) | Get a list of valid mount point units. | +| updateICTFixturesByFile | [.UpdateICTFixturesByFileRequest](#UpdateICTFixturesByFileRequest) | [.UpdateICTFixturesResponse](#UpdateICTFixturesResponse) | Update the ICT fixtures properties of a CCA from a CSV formatted file. This API could be used to add new ICT fixtures or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that ICT fixture will be updated. If the ID specified does not already exist, or if the field is empty, then a new ICT fixture will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export ICT Fixtures. | +| updateMountPoints | [.UpdateMountPointsRequest](#UpdateMountPointsRequest) | [.UpdateMountPointsResponse](#UpdateMountPointsResponse) | Update mount points with specified properties. | +| updateMountPointsByFile | [.UpdateMountPointsByFileRequest](#UpdateMountPointsByFileRequest) | [.UpdateMountPointsResponse](#UpdateMountPointsResponse) | Update the mount points properties of a CCA from a CSV formatted file. This API could be used to add new mount points or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that mount point will be updated. If the ID specified does not already exist, or if the field is empty, then a new mount point will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export Mount Points. | +| updateTestPointsByFile | [.UpdateTestPointsByFileRequest](#UpdateTestPointsByFileRequest) | [.UpdateTestPointsResponse](#UpdateTestPointsResponse) | Update the test points properties of a CCA from a CSV formatted file. This API could be used to add new test points or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that test point will be updated. If the ID specified does not already exist, or if the field is empty, then a new test point will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export Test Points. | +| addModelingRegion | [.AddModelingRegionRequest](#AddModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Add one or more modeling regions with the specified shapes and properties. | +| updateModelingRegion | [.UpdateModelingRegionRequest](#UpdateModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Update one or more modeling regions with the specified shapes and properties. | +| deleteModelingRegion | [.DeleteModelingRegionRequest](#DeleteModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Delete one or more existing modeling regions. | +| copyModelingRegion | [.CopyModelingRegionRequest](#CopyModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Copy one or more existing modeling regions. | + + + + + + + + +## SherlockLifeCycleService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### AddHarmonicEventRequest + +Request to define and add a new harmonic vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the harmonic event. | +| description | [string](#string) | | Description of the harmonic event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this harmonic event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| sweepRate | [double](#double) | | Sweep rate for the harmonic event | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: "30,15". | +| profileType | [string](#string) | | Harmonic load profile types. Example valid values are "Uniaxial" and "Triaxial". | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: "0,0,1". | + + + + + + + + +### AddHarmonicEventResponse + +Response from adding a harmonic vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddHarmonicVibeProfilesRequest + +Request to define and add new harmonic vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| harmonicVibeProfiles | [AddHarmonicVibeProfilesRequest.HarmonicVibeProfile](#AddHarmonicVibeProfilesRequest-HarmonicVibeProfile) | repeated | List of harmonic vibe life cycle event profiles for a specified project. | + + + + + + + + +### AddHarmonicVibeProfilesRequest.HarmonicVibeProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the harmonic event. | +| profileName | [string](#string) | | Name of the harmonic profile. | +| freqUnits | [string](#string) | | Frequency units. | +| loadUnits | [string](#string) | | Load units. | +| harmonicVibeProfileEntries | [AddHarmonicVibeProfilesRequest.HarmonicVibeProfile.Entry](#AddHarmonicVibeProfilesRequest-HarmonicVibeProfile-Entry) | repeated | List of frequency and load values for a harmonic vibe life cycle phase. | +| triaxialAxis | [string](#string) | | If the harmonic profile type is "Triaxial", the axis this profile should be assigned to. Valid values are: x, y, z. | + + + + + + + + +### AddHarmonicVibeProfilesRequest.HarmonicVibeProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| freq | [double](#double) | | Frequency. | +| load | [double](#double) | | Load. | + + + + + + + + +### AddHarmonicVibeProfilesResponse + +Response from adding harmonic vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddRandomVibeEventRequest + +Request to define and add a new random vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the random vibe event. | +| description | [string](#string) | | Description of the random vibe event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this random vibe event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: "30,15". | +| profileType | [string](#string) | | Random load profile type. Example valid value is "Uniaxial". | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: "0,0,1". | + + + + + + + + +### AddRandomVibeEventResponse + +Response from adding a random vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddRandomVibeProfilesRequest + +Request to define and add new random vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| randomVibeProfiles | [AddRandomVibeProfilesRequest.RandomVibeProfile](#AddRandomVibeProfilesRequest-RandomVibeProfile) | repeated | List of random vibe life cycle event profiles for a specified project. | + + + + + + + + +### AddRandomVibeProfilesRequest.RandomVibeProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the random vibe event. | +| profileName | [string](#string) | | Name of the random vibe profile. | +| freqUnits | [string](#string) | | Frequency units. | +| amplUnits | [string](#string) | | Amplitude units. | +| randomVibeProfileEntries | [AddRandomVibeProfilesRequest.RandomVibeProfile.Entry](#AddRandomVibeProfilesRequest-RandomVibeProfile-Entry) | repeated | List of frequency and amplitude values for a random vibe life cycle event. | + + + + + + + + +### AddRandomVibeProfilesRequest.RandomVibeProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| freq | [double](#double) | | Frequency. | +| ampl | [double](#double) | | Amplitude. | + + + + + + + + +### AddRandomVibeProfilesResponse + +Response from adding random vibe profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddShockEventRequest + +Request to define and add a new shock life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the shock event. | +| description | [string](#string) | | Description of the shock event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this shock event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: 30,15 | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: 0,0,1 | + + + + + + + + +### AddShockEventResponse + +Response from adding a shock life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddShockProfilesRequest + +Request to define and add new shock life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| shockProfiles | [AddShockProfilesRequest.ShockProfile](#AddShockProfilesRequest-ShockProfile) | repeated | List of shock life cycle event profiles for a specified project. | + + + + + + + + +### AddShockProfilesRequest.ShockProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the shock event. | +| profileName | [string](#string) | | Name of the shock profile. | +| duration | [double](#double) | | Pulse duration. | +| durationUnits | [string](#string) | | Pulse duration unit. | +| sampleRate | [double](#double) | | Sample rate. | +| sampleRateUnits | [string](#string) | | Sample rate unit. | +| loadUnits | [string](#string) | | Load unit. | +| freqUnits | [string](#string) | | Frequency unit. | +| shockProfileEntries | [AddShockProfilesRequest.ShockProfile.Entry](#AddShockProfilesRequest-ShockProfile-Entry) | repeated | Primary shape entry for the shock profile. | + + + + + + + + +### AddShockProfilesRequest.ShockProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| shape | [string](#string) | | Shape of the shock profile. | +| load | [double](#double) | | Load. | +| freq | [double](#double) | | Frequency rate. | +| decay | [double](#double) | | Decay rate. | + + + + + + + + +### AddShockProfilesResponse + +Response from adding shock life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddThermalEventRequest + +Request to define and add a new thermal life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the thermal event. | +| description | [string](#string) | | Description of the thermal event. | +| numOfCycles | [double](#double) | | Number of cycles defined for this thermal event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| cycleState | [string](#string) | | The life cycle state. For example: "OPERATING", "STORAGE". | + + + + + + + + +### AddThermalEventResponse + +Response from adding a thermal life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddThermalProfilesRequest + +Request to define and add a new thermal life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalProfiles | [AddThermalProfilesRequest.ThermalProfile](#AddThermalProfilesRequest-ThermalProfile) | repeated | List of thermal life cycle event profiles for a specified project. | + + + + + + + + +### AddThermalProfilesRequest.ThermalProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the thermal event. | +| profileName | [string](#string) | | Name of the thermal profile. | +| timeUnits | [string](#string) | | Time units. | +| tempUnits | [string](#string) | | Temperature units. | +| thermalProfileEntries | [AddThermalProfilesRequest.ThermalProfile.Entry](#AddThermalProfilesRequest-ThermalProfile-Entry) | repeated | List of step entries for a life cycle event and/or phase. | + + + + + + + + +### AddThermalProfilesRequest.ThermalProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| step | [string](#string) | | Name of the step. | +| type | [string](#string) | | Profile step type. "HOLD" or "RAMP". | +| time | [double](#double) | | Time duration of the step. | +| temp | [double](#double) | | Temperature of the step. | + + + + + + + + +### AddThermalProfilesResponse + +Response from adding thermal profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### CreateLifePhaseRequest + +Request for creating a life phase. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of new life phase. | +| description | [string](#string) | | Description of new life phase. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for new life phase. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | + + + + + + + + +### CreateLifePhaseResponse + +Response from creating a life phase. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of error messages. | + + + + + + + + +### DeleteEventRequest + +Request to delete a life cycle event in a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase from which to delete this event. | +| eventName | [string](#string) | | Name of the event to be deleted. | + + + + + + + + +### DeleteLifePhaseResponse + +Response for deleting a life phase + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### DeletePhaseRequest + +Request for deleting a life phase + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | Sherlock life phase name. | + + + + + + + + +### Events + +Represents an event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Event name. | + + + + + + + + +### ListAmplUnitsRequest + +Request for a list of amplitude units. + + + + + + + + +### ListAmplUnitsResponse + +Represents a list of amplitude units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| amplUnits | [string](#string) | repeated | List of amplitude units. | + + + + + + + + +### ListDurationUnitsRequest + +Request for a list of duration units for event settings. + + + + + + + + +### ListDurationUnitsResponse + +Represents a list of duration units for event settings in life cycle. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| durationUnits | [string](#string) | repeated | List of duration units. | + + + + + + + + +### ListFreqUnitsRequest + +Request for a list of frequency units. + + + + + + + + +### ListFreqUnitsResponse + +Represents a list of frequency units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| freqUnits | [string](#string) | repeated | List of frequency units. For example: "HZ", "KHZ", "MHZ", "GHZ". | + + + + + + + + +### ListHarmonicEventsRequest + +Request for a list of harmonic events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListHarmonicEventsResponse + +Represents a list of harmonic events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of harmonic events. | + + + + + + + + +### ListHarmonicProfileTypesRequest + +Request for a list of harmonic load profile types. + + + + + + + + +### ListHarmonicProfileTypesResponse + +Represents a list of harmonic load profile types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of harmonic load profile types. "Uniaxial", "Triaxial". | + + + + + + + + +### ListLCEventsRequest + +Request for a list of life cycle phases and events for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListLCEventsResponse + +Represents the life cycle phases and events for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| lcPhases | [ListLCEventsResponse.LifeCyclePhase](#ListLCEventsResponse-LifeCyclePhase) | repeated | List of LifeCyclePhases for a specified project. | + + + + + + + + +### ListLCEventsResponse.LifeCyclePhase + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle phase name. | +| description | [string](#string) | | Life cycle phase description. | +| lcEvents | [ListLCEventsResponse.LifeCyclePhase.LifeCycleEvent](#ListLCEventsResponse-LifeCyclePhase-LifeCycleEvent) | repeated | List of LifeCycleEvents for a project phase. | + + + + + + + + +### ListLCEventsResponse.LifeCyclePhase.LifeCycleEvent + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle event name. | +| description | [string](#string) | | Life cycle event description. | +| type | [string](#string) | | Life cycle type. For example: "Thermal Event", "Shock Event", "Random Vibe", "Harmonic Vibe". | + + + + + + + + +### ListLCStatesRequest + +Request for a list of life cycle states. + + + + + + + + +### ListLCStatesResponse + +Represents a list of life cycle states. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| states | [string](#string) | repeated | List of life cycle states. For example: "Operating", "Storage". | + + + + + + + + +### ListLCTypesRequest + +Request for a list of life cycle types. + + + + + + + + +### ListLCTypesResponse + +Represents a list of life cycle types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of life cycle types. For example, "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | + + + + + + + + +### ListRandomVibeEventsRequest + +Request for a list of random vibe events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListRandomVibeEventsResponse + +Represents a list of random vibe events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of random vibe events. | + + + + + + + + +### ListRandomVibeProfileTypesRequest + +Request for a list of random vibe profile types. + + + + + + + + +### ListRandomVibeProfileTypesResponse + +Represents a list of random vibe profile types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of random vibe profile types. Currently there is only one: "Uniaxial". | + + + + + + + + +### ListShockEventsRequest + +Request for a list of shock events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListShockEventsResponse + +Represents a list of shock events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of shock events. | + + + + + + + + +### ListShockLoadUnitsRequest + +Request for a list of shock load units. + + + + + + + + +### ListShockLoadUnitsResponse + +Represents a list of shock load units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | List of shock load units. For example: "G", "m/s2", "mm/s2". | + + + + + + + + +### ListShockPulsesRequest + +Request for a list of shock Pulses. + + + + + + + + +### ListShockPulsesResponse + +Represents a list of shock Pulses. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| shockPulse | [string](#string) | repeated | List of shock pulses. For example: "FullSine", "HalfSine", "Triangle", "Sawtooth", "FullSquare". | + + + + + + + + +### ListTempUnitsRequest + +Request for a list of temperature units. + + + + + + + + +### ListTempUnitsResponse + +Represents a list of temperature units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| tempUnits | [string](#string) | repeated | List of temperature units. For example: "C", "F", "K". | + + + + + + + + +### LoadHarmonicProfileRequest + +Request to load a harmonic life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Harmonic event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| harmonicCsvProps | [LoadHarmonicProfileRequest.CSVProps](#LoadHarmonicProfileRequest-CSVProps) | | Properties for a .csv file load. | +| triaxialAxis | [string](#string) | | If the harmonic profile type is "Triaxial", the axis this profile should be assigned to. Valid values are: x, y, z. | + + + + + + + + +### LoadHarmonicProfileRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the harmonic profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | + + + + + + + + +### LoadHarmonicProfileResponse + +Response from loading a harmonic vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadRandomVibeProfileRequest + +Request to load a random vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Random vibe event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| randomVibeCsvProps | [LoadRandomVibeProfileRequest.CSVProps](#LoadRandomVibeProfileRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadRandomVibeProfileRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the random vibe profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| amplColumn | [string](#string) | | Amplitude column name. | +| amplUnits | [string](#string) | | Amplitude units. | + + + + + + + + +### LoadRandomVibeProfileResponse + +Response from loading a random vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadShockProfileDatasetRequest + +Request to load a shock life cycle event profile using the dataset (time and load) from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Shock event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| shockDsCsvProps | [LoadShockProfileDatasetRequest.CSVProps](#LoadShockProfileDatasetRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadShockProfileDatasetRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the shock profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| timeColumn | [string](#string) | | Time column name. | +| timeUnits | [string](#string) | | Time units. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | + + + + + + + + +### LoadShockProfileDatasetResponse + +Response from loading a shock profile using the dataset from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadShockProfilePulsesRequest + +Request to load a shock life cycle event profile using pulses from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Shock event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| shockPulsesCsvProps | [LoadShockProfilePulsesRequest.CSVProps](#LoadShockProfilePulsesRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadShockProfilePulsesRequest.CSVProps + +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the shock profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| duration | [double](#double) | | Pulse duration length. | +| durationUnits | [string](#string) | | Pulse duration time units. | +| sampleRate | [double](#double) | | Sample rate. | +| sampleRateUnits | [string](#string) | | Sample rate units. | +| shapeColumn | [string](#string) | | Pulse shape column name. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| decayColumn | [string](#string) | | Decay column name. | + + + + + + + + +### LoadShockProfilePulsesResponse + +Response from loading a shock profile using pulses from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadThermalProfileRequest + +Request to load a thermal life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Thermal event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| csvProps | [LoadThermalProfileRequest.CSVProps](#LoadThermalProfileRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadThermalProfileRequest.CSVProps + +.csv file properties. This is only required for .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the thermal profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| stepColumn | [string](#string) | | Step column name. | +| typeColumn | [string](#string) | | Step type column name. | +| timeColumn | [string](#string) | | Time duration column name. | +| timeUnits | [string](#string) | | Time units column name. | +| tempColumn | [string](#string) | | Temperature column name. | +| tempUnits | [string](#string) | | Temperature units column name. | + + + + + + + + +### LoadThermalProfileResponse + +Response from loading a thermal profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + + + + + + + +### SherlockLifeCycleService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| addHarmonicEvent | [.AddHarmonicEventRequest](#AddHarmonicEventRequest) | [.AddHarmonicEventResponse](#AddHarmonicEventResponse) | Define and add a new harmonic vibe life cycle event. | +| addHarmonicVibeProfiles | [.AddHarmonicVibeProfilesRequest](#AddHarmonicVibeProfilesRequest) | [.AddHarmonicVibeProfilesResponse](#AddHarmonicVibeProfilesResponse) | Define and add new harmonic vibe life cycle event profiles. | +| addRandomVibeProfiles | [.AddRandomVibeProfilesRequest](#AddRandomVibeProfilesRequest) | [.AddRandomVibeProfilesResponse](#AddRandomVibeProfilesResponse) | Define and add new random vibe life cycle event profiles. | +| addRandomVibeEvent | [.AddRandomVibeEventRequest](#AddRandomVibeEventRequest) | [.AddRandomVibeEventResponse](#AddRandomVibeEventResponse) | Define and add a new random vibe life cycle event. | +| addShockEvent | [.AddShockEventRequest](#AddShockEventRequest) | [.AddShockEventResponse](#AddShockEventResponse) | Define and add a new shock life cycle event. | +| addShockProfiles | [.AddShockProfilesRequest](#AddShockProfilesRequest) | [.AddShockProfilesResponse](#AddShockProfilesResponse) | Define and add new shock life cycle event profiles. Keep in mind, the pulse duration and load values defined in the Shock Profile Editor are relative values used solely within the editor to define the profile shape. A combination of all the primary pulse shapes is then used to define the pulse profile. | +| addThermalEvent | [.AddThermalEventRequest](#AddThermalEventRequest) | [.AddThermalEventResponse](#AddThermalEventResponse) | Define and add a new thermal life cycle event. | +| addThermalProfiles | [.AddThermalProfilesRequest](#AddThermalProfilesRequest) | [.AddThermalProfilesResponse](#AddThermalProfilesResponse) | Define and add new thermal life cycle event profiles. | +| createLifePhase | [.CreateLifePhaseRequest](#CreateLifePhaseRequest) | [.CreateLifePhaseResponse](#CreateLifePhaseResponse) | Define and add a new life phase. | +| deleteEvent | [.DeleteEventRequest](#DeleteEventRequest) | [.ReturnCode](#ReturnCode) | Delete a life cycle event. | +| listAmplUnits | [.ListAmplUnitsRequest](#ListAmplUnitsRequest) | [.ListAmplUnitsResponse](#ListAmplUnitsResponse) | Returns a list of amplitude units when adding a random vibe profile. | +| listDurationUnits | [.ListDurationUnitsRequest](#ListDurationUnitsRequest) | [.ListDurationUnitsResponse](#ListDurationUnitsResponse) | Returns a list of duration units when adding a life cycle event. | +| listFreqUnits | [.ListFreqUnitsRequest](#ListFreqUnitsRequest) | [.ListFreqUnitsResponse](#ListFreqUnitsResponse) | Returns a list of frequency units. | +| listHarmonicEvents | [.ListHarmonicEventsRequest](#ListHarmonicEventsRequest) | [.ListHarmonicEventsResponse](#ListHarmonicEventsResponse) | Returns a list of harmonic events defined for a project. | +| listHarmonicProfileTypes | [.ListHarmonicProfileTypesRequest](#ListHarmonicProfileTypesRequest) | [.ListHarmonicProfileTypesResponse](#ListHarmonicProfileTypesResponse) | Returns a list of harmonic load Profile types. | +| listLifeCycleEvents | [.ListLCEventsRequest](#ListLCEventsRequest) | [.ListLCEventsResponse](#ListLCEventsResponse) | Returns a list of life cycle phases and their events given a Sherlock project directory. | +| listLifeCycleStates | [.ListLCStatesRequest](#ListLCStatesRequest) | [.ListLCStatesResponse](#ListLCStatesResponse) | Returns a list of life cycle states. | +| listLifeCycleTypes | [.ListLCTypesRequest](#ListLCTypesRequest) | [.ListLCTypesResponse](#ListLCTypesResponse) | Returns a list of life cycle types. | +| listRandomVibeProfileTypes | [.ListRandomVibeProfileTypesRequest](#ListRandomVibeProfileTypesRequest) | [.ListRandomVibeProfileTypesResponse](#ListRandomVibeProfileTypesResponse) | Returns a list of random vibe profile types. | +| listRandomVibeEvents | [.ListRandomVibeEventsRequest](#ListRandomVibeEventsRequest) | [.ListRandomVibeEventsResponse](#ListRandomVibeEventsResponse) | Returns a list of random vibe events defined for a project. | +| listShockEvents | [.ListShockEventsRequest](#ListShockEventsRequest) | [.ListShockEventsResponse](#ListShockEventsResponse) | Returns a list of shock events defined for a project. | +| listShockLoadUnits | [.ListShockLoadUnitsRequest](#ListShockLoadUnitsRequest) | [.ListShockLoadUnitsResponse](#ListShockLoadUnitsResponse) | Returns a list of shock load units. | +| listShockPulses | [.ListShockPulsesRequest](#ListShockPulsesRequest) | [.ListShockPulsesResponse](#ListShockPulsesResponse) | Returns a list of shock pulses. | +| listTempUnits | [.ListTempUnitsRequest](#ListTempUnitsRequest) | [.ListTempUnitsResponse](#ListTempUnitsResponse) | Returns a list of temperature units. | +| loadHarmonicProfile | [.LoadHarmonicProfileRequest](#LoadHarmonicProfileRequest) | [.LoadHarmonicProfileResponse](#LoadHarmonicProfileResponse) | Loads a harmonic profile from a .dat or .csv file. | +| loadRandomVibeProfile | [.LoadRandomVibeProfileRequest](#LoadRandomVibeProfileRequest) | [.LoadRandomVibeProfileResponse](#LoadRandomVibeProfileResponse) | Loads a random vibe profile from a .dat or .csv file. | +| loadShockProfileDataset | [.LoadShockProfileDatasetRequest](#LoadShockProfileDatasetRequest) | [.LoadShockProfileDatasetResponse](#LoadShockProfileDatasetResponse) | Loads a shock profile using dataset from a .dat or .csv file. | +| loadShockProfilePulses | [.LoadShockProfilePulsesRequest](#LoadShockProfilePulsesRequest) | [.LoadShockProfilePulsesResponse](#LoadShockProfilePulsesResponse) | Loads a shock profile using pulses from a .dat or .csv file. | +| loadThermalProfile | [.LoadThermalProfileRequest](#LoadThermalProfileRequest) | [.LoadThermalProfileResponse](#LoadThermalProfileResponse) | Loads a thermal profile from a .dat or .csv file. | +| deletePhase | [.DeletePhaseRequest](#DeletePhaseRequest) | [.ReturnCode](#ReturnCode) | Delete a life phase for a project. | + + + + + + + + +## SherlockModelService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### DrillHoleModeling + +Drill hole properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModelingEnabled | [bool](#bool) | | Determines if drill holes will be included in the exported model. | +| minHoleDiameter | [Measurement](#Measurement) | | All drill holes with a diameter less than this will not be included in the exported model. | +| maxEdgeLength | [Measurement](#Measurement) | | Set this to 0 to include all drill holes. + +Specifies the size of the segments used to represent round drill holes by a polygon. | + + + + + + + + +### ExportAEDBRequest + +Request to export an Electronics Desktop model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the Electronics Desktop export file. | +| overwrite | [bool](#bool) | | Overwrite existing file if true. | +| displayModel | [bool](#bool) | | Display model after export if true. | + + + + + + + + +### ExportFEAModelRequest + +Request to export an FEA model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the export file. | +| analysis | [ExportFEAModelRequest.ExportAnalysis](#ExportFEAModelRequest-ExportAnalysis) | | The ExportAnalysis enum representing the type of analysis that is being exported. | +| drillHoleParam | [ExportFEAModelRequest.DrillHoleParam](#ExportFEAModelRequest-DrillHoleParam) | | Drill Holes modeling parameters - Min Hole Diameter and Max. Edge Length. If any of this parameter is provided, drill hole modeling will be enabled. | +| detectLeadModeling | [string](#string) | | If enabled, automatically enable lead modeling if any part has lead geometry defined, valid values are ENABLED/enabled or DISABLED/disabled. | +| leadModelParam | [ExportFEAModelRequest.LeadModelParam](#ExportFEAModelRequest-LeadModelParam) | | Lead modeling parameter. | +| displayModel | [bool](#bool) | | Display model after export. | +| clearFEADatabase | [bool](#bool) | | Clear FEA Database before defining model. | +| useFEAModelID | [bool](#bool) | | Use FEA Model ID. | +| coordinateUnits | [string](#string) | | Units of exported model coordinates, valid values are "in", "mm", "m", "mil", "micron", "nm". | + + + + + + + + +### ExportFEAModelRequest.DrillHoleParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModeling | [string](#string) | | Enables or disables drill hole modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| minHoleDiameter | [ExportFEAModelRequest.DrillHoleParam.MinHoleDiameter](#ExportFEAModelRequest-DrillHoleParam-MinHoleDiameter) | | Minimum hole diameter info for a drill hole. | +| maxEdgeLength | [ExportFEAModelRequest.DrillHoleParam.MaxEdgeLength](#ExportFEAModelRequest-DrillHoleParam-MaxEdgeLength) | | Maximum edge length info for a drill hole. | + + + + + + + + +### ExportFEAModelRequest.DrillHoleParam.MaxEdgeLength + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Maximum edge length value. | +| unit | [string](#string) | | Maximum edge length unit. | + + + + + + + + +### ExportFEAModelRequest.DrillHoleParam.MinHoleDiameter + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Minimum hole diameter value. | +| unit | [string](#string) | | Minimum hole diameter unit. | + + + + + + + + +### ExportFEAModelRequest.LeadModelParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| leadModeling | [string](#string) | | Enables or disables lead modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| leadElemOrder | [string](#string) | | Element order, valid values are "First Order (Linear)", "Second Order (Quadratic)", or "Solid Shell". | +| maxMeshSize | [ExportFEAModelRequest.LeadModelParam.MaxMeshSize](#ExportFEAModelRequest-LeadModelParam-MaxMeshSize) | | Max mesh size info for a lead model param. | +| verticalMeshSize | [ExportFEAModelRequest.LeadModelParam.VerticalMeshSize](#ExportFEAModelRequest-LeadModelParam-VerticalMeshSize) | | Vertical mesh size info for a lead model param. | +| thicknessCount | [int32](#int32) | | The number of elements through the lead thickness that will be created per lead. | +| aspectRatio | [int32](#int32) | | The aspect ratio is multiplied by the lead thickness divided by the through thickness count to give the lead element height. | + + + + + + + + +### ExportFEAModelRequest.LeadModelParam.MaxMeshSize + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Max mesh size value. | +| unit | [string](#string) | | Max mesh size unit. | + + + + + + + + +### ExportFEAModelRequest.LeadModelParam.VerticalMeshSize + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Vertical mesh size value. | +| unit | [string](#string) | | Vertical mesh size unit. | + + + + + + + + +### ExportTraceModelRequest + +Request to export one or many trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceModelExportParams | [TraceModelExportParams](#TraceModelExportParams) | repeated | Parameters for a single trace model export. | + + + + + + + + +### ExportTraceReinforcementModelRequest + +Request to export a trace reinforcement model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the trace reinforcement export file. | +| overwrite | [bool](#bool) | | Overwrite existing file if true. | +| displayModel | [bool](#bool) | | Display model after export if true. | +| clearFEADatabase | [bool](#bool) | | Clear FEA Database before defining model if true. | +| generateModelsForAllLayers | [bool](#bool) | | Generate models for all layers. | +| traceParam | [ExportTraceReinforcementModelRequest.TraceParam](#ExportTraceReinforcementModelRequest-TraceParam) | | Trace properties (Diameter Threshold and Minimum Hole Diameter for Shell/Beam). | +| traceDrillHoleParam | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam) | | **Deprecated.** Drill Holes modeling parameters - Min Hole Diameter and Max. Edge Length. If any of this parameter is provided, drill hole modeling will be enabled. | +| drillHoleModeling | [DrillHoleModeling](#DrillHoleModeling) | | Properties used for exporting drill holes. | +| coordinateUnits | [string](#string) | | Units of exported model coordinates, valid values are "in", "mm", "m", "mil", "micron", "nm". | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceDrillHoleParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModeling | [string](#string) | | Enables or disables drill hole modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| minHoleDiameter | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MinHoleDiameter](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam-MinHoleDiameter) | | Minimum hole diameter info for a trace drill hole param. | +| maxEdgeLength | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MaxEdgeLength](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam-MaxEdgeLength) | | Maximum edge length info for a trace drill hole param. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MaxEdgeLength + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Maximum edge length value. | +| unit | [string](#string) | | Maximum edge length unit. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MinHoleDiameter + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Minimum hole diameter value. | +| unit | [string](#string) | | Minimum hole diameter unit. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| diameterThreshold | [ExportTraceReinforcementModelRequest.TraceParam.DiameterThreshold](#ExportTraceReinforcementModelRequest-TraceParam-DiameterThreshold) | | Diameter threshold info for a trace parameter. | +| minHoleDiameterForShellOrBeam | [ExportTraceReinforcementModelRequest.TraceParam.MinHoleDiameterForShellOrBeam](#ExportTraceReinforcementModelRequest-TraceParam-MinHoleDiameterForShellOrBeam) | | Minimum hole diameter info for Shell or Beam for a trace parameter. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceParam.DiameterThreshold + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Diameter threshold value. | +| unit | [string](#string) | | Diameter threshold unit. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceParam.MinHoleDiameterForShellOrBeam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Min. hole diameter value for Shell/Beam. | +| unit | [string](#string) | | Min. hole diameter unit for Shell/Beam. | + + + + + + + + +### GenerateTraceModelRequest + +Request to generate a trace model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. If left empty, trace models will be generated for all CCAs and all of their copper layers. | +| copperLayerName | [string](#string) | | Copper layer from which to generate the trace model. If left empty, trace models will be generated for all copper layers. | +| maxArcSegment | [double](#double) | | Max arc segment. | +| maxArcSegmentUnits | [string](#string) | | Max arc segment units. | +| minTraceArea | [double](#double) | | Min trace area. | +| minTraceAreaUnits | [string](#string) | | Min trace area units. | +| minHoleArea | [double](#double) | | Min hole area. | +| minHoleAreaUnits | [string](#string) | | Min hole area units. | +| useSnapshotForNonImageLayer | [bool](#bool) | | Use an image to generate the trace model for layers that are not image layers. If a snapshot image exists for the layer, that snapshot is used. Otherwise this creates an image that is identical to creating a snapshot. | + + + + + + + + +### TraceModelExportParams + +All parameters required to export a trace model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | Sherlock CCA name. | +| filePath | [string](#string) | | Full file path to the trace export file. | +| copperLayerName | [string](#string) | | Name of the layer in the CCA to export. | +| overwriteExistingFile | [bool](#bool) | | Option that determines if any existing files get overwritten. | +| displayModelAfterExport | [bool](#bool) | | Option to display the model after the export is done. | +| clearFEADatabase | [bool](#bool) | optional | Clears FEA Database. Applicable for .apdl, and .cdb. This will be set to false if it is omitted for applicable file types. | +| useFEAModelID | [bool](#bool) | | Use FEA Model ID. | +| coordUnits | [string](#string) | optional | Units of the coordinate system. Applicable to .py .wbjn, and .stp/.step. This will be set to mm if omitted for applicable file types. | +| pcbMeshPropParam | [TraceModelExportParams.PcbMeshPropParam](#TraceModelExportParams-PcbMeshPropParam) | | Properties used for exporting PCB mesh. | +| tracePropParam | [TraceModelExportParams.TracePropParam](#TraceModelExportParams-TracePropParam) | | Properties used for exporting the traces. | +| drillHoleModeling | [DrillHoleModeling](#DrillHoleModeling) | | Properties used for exporting drill holes. | + + + + + + + + +### TraceModelExportParams.PcbMeshPropParam + +Mesh properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| meshType | [MeshType](#MeshType) | | Options of different trace meshing strategies. The options available depend on export file type. | +| isModelingRegionEnabled | [bool](#bool) | | Determines if pre-defined modeling regions will be applied to the exported trace model. | + + + + + + + + +### TraceModelExportParams.TracePropParam + +Trace properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceOutputs | [TraceOutputType](#TraceOutputType) | | Options to select which trace regions to include in the 3D model. | +| elementOrder | [ElementOrder](#ElementOrder) | | Type of FEA element to be used when modeling each component (First/linear, Second/quadratic, Solid Shell). | +| maxMeshSize | [Measurement](#Measurement) | | Value passed to FEA meshing tool to indicate the desired element sizes. | +| maxHolesPerTrace | [int32](#int32) | | Maximum number of holes allowed in a trace before partitioning it into multiple traces. | + + + + + + + + + + +### ExportFEAModelRequest.ExportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NaturalFreq | 0 | Natural Frequency Analysis. | +| HarmonicVibe | 1 | Harmonic Vibe Analysis. | +| ICTAnalysis | 2 | ICT Analysis. | +| MechanicalShock | 3 | Mechanical Shock Analysis. | +| RandomVibe | 4 | Random Vibe Analysis. | + + + + + +### MeshType + +Different ways meshes are created. The options + available depend on the export file type. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NONE | 0 | Defines only geometric volumes without generating mesh elements. | +| BONDED | 1 | Defines meshed elements generated by Sherlock. | +| SWEEP | 2 | Defines geometric volumes along with commands to mesh the volumes depending on the file type. | + + + + + +### TraceOutputType + +Indicates which trace regions to include in the 3D model. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| ALL_REGIONS | 0 | Both Conductor and Dielectric. | +| CONDUCTOR_REGIONS | 1 | The traces themselves. | +| DIELECTRIC_REGIONS | 2 | Regions that surround the conductor regions (Ex. areas filled with resin). | + + + + + + + + + +### SherlockModelService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| exportFEAModel | [.ExportFEAModelRequest](#ExportFEAModelRequest) | [.ReturnCode](#ReturnCode) | Export an FEA Model. | +| exportTraceReinforcementModel | [.ExportTraceReinforcementModelRequest](#ExportTraceReinforcementModelRequest) | [.ReturnCode](#ReturnCode) | Export a trace reinforcement model. | +| generateTraceModel | [.GenerateTraceModelRequest](#GenerateTraceModelRequest) | [.ReturnCode](#ReturnCode) | Generate a trace model. | +| exportTraceModel | [.ExportTraceModelRequest](#ExportTraceModelRequest) | [.ReturnCode](#ReturnCode) | Export a trace model. | +| exportAEDB | [.ExportAEDBRequest](#ExportAEDBRequest) | [.ReturnCode](#ReturnCode) | Export an Electronics Desktop model. | + + + + + + + + +## SherlockPartsService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### ExportNetListRequest + +Contains the options needed to export a net list to a delimited output file (csv but can have delimiters other than a comma) + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| outputFilePath | [string](#string) | | Full path of the file where the table will be written. | +| overwriteExisting | [bool](#bool) | | Flag to determine if existing files should be overwritten if they match the outputFilePath. False by default. | +| colDelimiter | [TableDelimiter](#TableDelimiter) | | Enum that specifies supported delimiter character to be used. Set to COMMA by default. Not applicable to Excel files like xls, xlsx. | +| utf8Enabled | [bool](#bool) | | Flag that specifies if UTF-8 will be used. False by default. Not applicable to Excel files like xls, xlsx. | + + + + + + + + +### ExportPartsListRequest + +Request to export the parts list for all parts for a project CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the export parts list .csv file. | + + + + + + + + +### GetBoardSidesRequest + +Request to list valid board sides. + + + + + + + + +### GetBoardSidesResponse + +Represents a list of valid board sides. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boardSides | [string](#string) | repeated | Board sides. | + + + + + + + + +### GetPartLocationRequest + +Request to get a part's location. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| refDes | [string](#string) | | A comma separated list of reference designators for a list of parts, or a Ref Des for one part. | +| locationUnits | [string](#string) | | Unit of length for the part location. Supported values are IN, MM, M, MIL, MICRON, and NM. | + + + + + + + + +### GetPartLocationResponse + +Represents one or multiple parts' location properties + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| locationData | [GetPartLocationResponse.LocationData](#GetPartLocationResponse-LocationData) | repeated | List of location data for a part or list of parts in a specified project and CCA. | + + + + + + + + +### GetPartLocationResponse.LocationData + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| x | [double](#double) | | Location of the part along the X axis. | +| y | [double](#double) | | Location of the part along the Y axis. | +| rotation | [double](#double) | | Rotation of the part on the board in degrees. | +| locationUnits | [string](#string) | | Unit of length for the part location. | +| boardSide | [string](#string) | | Side of board on which the component exists. | +| mirrored | [bool](#bool) | | Indicates if the component is mirrored across the Y-axis. | +| refDes | [string](#string) | | Ref Des for the corresponding part. | + + + + + + + + +### GetPartLocationUnitsRequest + +Request to list valid location units. + + + + + + + + +### GetPartLocationUnitsResponse + +Represents a list of valid location units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | Location units. | + + + + + + + + +### ImportPartsListRequest + +Request to import a parts list for a project CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| importFile | [string](#string) | | Full file path to the parts list .csv file. | +| importAsUserSrc | [bool](#bool) | | If true, set the data source of the properties to "User". Otherwise, set the data source to the name of the importFile. | + + + + + + + + +### ListPartsLibrariesRequest + +Request to list the available parts libraries. + + + + + + + + +### ListPartsLibrariesResponse + +Represents a list of available parts libraries. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| partLibrary | [string](#string) | repeated | Parts library name. | + + + + + + + + +### ListPartsNotUpdatedRequest + +Request to get a list of parts not updated from the Sherlock Part Library. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListPartsNotUpdatedResponse + +Represents a list of parts not updated from the Sherlock Part Library. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccas | [ListPartsNotUpdatedResponse.CCA](#ListPartsNotUpdatedResponse-CCA) | repeated | List of CCAs containing Parts not updated. | + + + + + + + + +### ListPartsNotUpdatedResponse.CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| parts | [ListPartsNotUpdatedResponse.CCA.Part](#ListPartsNotUpdatedResponse-CCA-Part) | repeated | List of Parts not updated for a CCA. | + + + + + + + + +### ListPartsNotUpdatedResponse.CCA.Part + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | | Reference designator for the part. | +| partNumber | [string](#string) | | Part number. | + + + + + + + + +### UpdateLeadModelingRequest + +Request to enable Lead Modeling for all non LEADLESS parts leads. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### UpdatePartsListFromAVLRequest + +Request to update the parts list from AVL. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| matching | [MatchingMode](#MatchingMode) | | How sherlock matches parts in the AVL | +| duplication | [DuplicationMode](#DuplicationMode) | | How sherlock handles duplicate parts found. | +| avlPartNum | [AVLPartNum](#AVLPartNum) | | Update part number and vendor/manufacturer or part number only. | +| avlDesc | [AVLDescription](#AVLDescription) | | Update description or not. | + + + + + + + + +### UpdatePartsListFromAVLResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| numPartsUpdated | [int32](#int32) | | Number of parts updated in the parts list. | +| updateErrors | [string](#string) | repeated | Specific errors that occured during update. | + + + + + + + + +### UpdatePartsListPropertiesRequest + +Request to update one or more properties of one or more parts in a parts list. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name for which part properties will be updated. | +| partProperties | [UpdatePartsListPropertiesRequest.PartProperties](#UpdatePartsListPropertiesRequest-PartProperties) | repeated | List of parts with properties to be updated. | + + + + + + + + +### UpdatePartsListPropertiesRequest.PartProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | repeated | The reference designator for each part to be updated. If not included, update properties for all parts in the CCA. | +| properties | [UpdatePartsListPropertiesRequest.PartProperties.Property](#UpdatePartsListPropertiesRequest-PartProperties-Property) | repeated | Part properties to be updated. | + + + + + + + + +### UpdatePartsListPropertiesRequest.PartProperties.Property + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of property to be updated. | +| value | [string](#string) | | Value to be applied to the chosen part property. | + + + + + + + + +### UpdatePartsListPropertiesResponse + +Contains the status of the parts properties update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateErrors | [UpdatePartsListPropertiesResponse.PartPropertyError](#UpdatePartsListPropertiesResponse-PartPropertyError) | repeated | Part property update errors. | + + + + + + + + +### UpdatePartsListPropertiesResponse.PartPropertyError + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | optional | The reference designator of the part. Not set for invalid property name errors. | +| message | [string](#string) | | Error message when updating the part. | + + + + + + + + +### UpdatePartsListRequest + +Request to update a parts list based on matching and duplication preferences provided. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partLibrary | [string](#string) | | Parts library name. | +| matching | [MatchingMode](#MatchingMode) | | Designates the matching mode for updates. | +| duplication | [DuplicationMode](#DuplicationMode) | | Designates how to handle duplications during update. | + + + + + + + + +### UpdatePartsListResponse + +Contains the status of the update as well as all of the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts update error messages. | + + + + + + + + +### UpdatePartsLocationsByFileRequest + +Request to update one or more parts' locations using a CSV file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| numericFormat | [string](#string) | | Numeric format for the file. If not provided, it will default to "English (United States)". | +| filePath | [string](#string) | | File that contains the components and location properties. | + + + + + + + + +### UpdatePartsLocationsByFileResponse + +Contains the status of the parts locations update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts locations update error messages. | + + + + + + + + +### UpdatePartsLocationsRequest + +Request to set a part's location. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partLoc | [UpdatePartsLocationsRequest.PartLocation](#UpdatePartsLocationsRequest-PartLocation) | repeated | List of part locations to be updated for a specified project and CCA. | + + + + + + + + +### UpdatePartsLocationsRequest.PartLocation + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | | Reference designator of the part. | +| x | [string](#string) | | Location of the part along the X axis. | +| y | [string](#string) | | Location of the part along the Y axis. | +| rotation | [string](#string) | | Rotation of the part on the board in degrees. | +| locationUnits | [string](#string) | | Unit of length for the part location. Supported values are IN, MM, M, MIL, MICRON, and NM. | +| boardSide | [string](#string) | | Side of board on which the component exists. Supported values are TOP and BOTTOM. | +| mirrored | [string](#string) | | Indicates if the component is mirrored across the Y-axis. Supported values are Y, and N. | + + + + + + + + +### UpdatePartsLocationsResponse + +Contains the status of the parts locations update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts locations update error messages. | + + + + + + + + + + +### AVLDescription + +Determines if the part description in the parts list +will be updated by the AVL. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| AssignApprovedDescription | 0 | Assign approved description. | +| DoNotChangeDescription | 1 | Do not change description. | + + + + + +### AVLPartNum + +Determines what fields in the part list will get updated by the AVL. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| AssignInternalPartNum | 0 | Assign internal part number. | +| AssignVendorAndPartNum | 1 | Assign vendor & part number. | +| DoNotChangeVendorOrPartNum | 2 | Do not change vendor / part number. | + + + + + +### DuplicationMode + +Determines what happens when there are duplicate matches for parts in the part list +against parts in the AVL or Part Library. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| First | 0 | Uses first matched when there is duplication. | +| Error | 1 | Generates an error when there is duplication. | +| Ignore | 2 | Ignore the matches when there is duplication. | + + + + + + + + + +### SherlockPartsService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| listPartsLibraries | [.ListPartsLibrariesRequest](#ListPartsLibrariesRequest) | [.ListPartsLibrariesResponse](#ListPartsLibrariesResponse) | List the available parts libraries. | +| updatePartsList | [.UpdatePartsListRequest](#UpdatePartsListRequest) | [.UpdatePartsListResponse](#UpdatePartsListResponse) | Update the parts list for a project's CCA. | +| updatePartsListFromAVL | [.UpdatePartsListFromAVLRequest](#UpdatePartsListFromAVLRequest) | [.UpdatePartsListFromAVLResponse](#UpdatePartsListFromAVLResponse) | Update the parts list from the AVL. | +| updatePartsListProperties | [.UpdatePartsListPropertiesRequest](#UpdatePartsListPropertiesRequest) | [.UpdatePartsListPropertiesResponse](#UpdatePartsListPropertiesResponse) | Update the values of given parts. | +| listPartsNotUpdated | [.ListPartsNotUpdatedRequest](#ListPartsNotUpdatedRequest) | [.ListPartsNotUpdatedResponse](#ListPartsNotUpdatedResponse) | List the parts that have not been updated from the Sherlock Part Library. | +| updateLeadModeling | [.UpdateLeadModelingRequest](#UpdateLeadModelingRequest) | [.ReturnCode](#ReturnCode) | Enable lead modeling for all non LEADLESS parts leads in a project's CCA. | +| exportPartsList | [.ExportPartsListRequest](#ExportPartsListRequest) | [.ReturnCode](#ReturnCode) | Export parts list for all parts given a project's CCA. | +| importPartsList | [.ImportPartsListRequest](#ImportPartsListRequest) | [.ReturnCode](#ReturnCode) | Import a parts list for a given a project's CCA. | +| updatePartsLocations | [.UpdatePartsLocationsRequest](#UpdatePartsLocationsRequest) | [.UpdatePartsLocationsResponse](#UpdatePartsLocationsResponse) | Update one or more parts' locations. | +| updatePartsLocationsByFile | [.UpdatePartsLocationsByFileRequest](#UpdatePartsLocationsByFileRequest) | [.UpdatePartsLocationsByFileResponse](#UpdatePartsLocationsByFileResponse) | Update one or more parts' locations using a CSV file. | +| getPartLocationUnits | [.GetPartLocationUnitsRequest](#GetPartLocationUnitsRequest) | [.GetPartLocationUnitsResponse](#GetPartLocationUnitsResponse) | Get a list of valid part location units. | +| getBoardSides | [.GetBoardSidesRequest](#GetBoardSidesRequest) | [.GetBoardSidesResponse](#GetBoardSidesResponse) | Get a list of valid board side values. | +| getPartLocation | [.GetPartLocationRequest](#GetPartLocationRequest) | [.GetPartLocationResponse](#GetPartLocationResponse) | Get the location properties for a part. | +| exportNetList | [.ExportNetListRequest](#ExportNetListRequest) | [.ReturnCode](#ReturnCode) | Export the net list to a file | + + + + + + + + +## SherlockProjectService.proto + +Copyright 2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### AddCcaRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Name of the project. | +| CCAs | [CCA](#CCA) | repeated | CCAs to add. | + + + + + + + + +### AddProjectRequest + +Request to add a project to Sherlock. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| category | [string](#string) | | Project category. | +| description | [string](#string) | | Project description. | + + + + + + + + +### AddStrainMapRequest + +Request to add strain map files to CCAs in a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| strainMapFiles | [AddStrainMapRequest.StrainMapFile](#AddStrainMapRequest-StrainMapFile) | repeated | Strain map files and associated properties to be added. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| strainMapFile | [string](#string) | | Full path to the strain map file to be added. | +| fileComment | [string](#string) | | File comment text. | +| headerRowCount | [int32](#int32) | | Number of rows before the column header in the file. | +| referenceIDColumn | [string](#string) | | Reference ID column name. | +| strainColumn | [string](#string) | | Strain column name. | +| strainUnits | [string](#string) | | Strain units used in the strain map file. Valid units: µε, ε. | +| cca | [string](#string) | repeated | Project CCA names to to add the file to. | +| numericFormat | [string](#string) | | Numeric format for values. | +| fileType | [AddStrainMapRequest.StrainMapFile.FileType](#AddStrainMapRequest-StrainMapFile-FileType) | | Type of the strain map file. | +| imageFile | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile) | | Image strain map file properties. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| coordinateUnits | [string](#string) | | Coordinate units used for board, lengend and image boundaries. | +| boardBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.NodeCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-NodeCoordinate) | repeated | Coordinates of the nodes which make up the board outline. | +| imageBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.ImageCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-ImageCoordinate) | | Coordinates of the board bounds within the image. | +| legendBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-LegendCoordinate) | | Coordinates of the bounds of legend within the image. | +| legendOrientation | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendOrientation](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-LegendOrientation) | | Specify the legend orientation. | +| minStrain | [double](#double) | | Minimum strain value. | +| maxStrain | [double](#double) | | Maximum strain value. | +| strainUnits | [string](#string) | | Units for minimum and maximum strain values. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.ImageCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| imageX | [double](#double) | | X-coordinate of the upper left corner. | +| imageY | [double](#double) | | Y-coordinate of the upper left corner. | +| imageH | [double](#double) | | Height of the image. | +| imageW | [double](#double) | | Width of the image. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| legendX | [double](#double) | | X-coordinate of the upper left corner. | +| legendY | [double](#double) | | Y-coordinate of the upper left corner. | +| legendH | [double](#double) | | Height of the legend. | +| legendW | [double](#double) | | Width of the legend. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.NodeCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| vertexX | [double](#double) | | X-coordinate of the node. | +| vertexY | [double](#double) | | Y-coordinate of the node. | + + + + + + + + +### AddStrainMapResponse + +Response from adding strain map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddThermalMapRequest + +Request to add thermal map files to a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalMapFiles | [AddThermalMapRequest.AddThermalMap](#AddThermalMapRequest-AddThermalMap) | repeated | Thermal map files and associated properties to be added. | + + + + + + + + +### AddThermalMapRequest.AddThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| thermalMapFile | [string](#string) | | Full path to the thermal map file to be added. | +| thermalMapFileProperties | [ThermalMapFile](#ThermalMapFile) | | Thermal map file properties. | + + + + + + + + +### AddThermalMapResponse + +Response from adding thermal map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the circuit card. | +| description | [string](#string) | optional | Description of the circuit card. | +| defaultSolderType | [string](#string) | optional | Default solder type. | +| defaultStencilThickness | [double](#double) | optional | Default stencil thickness. | +| defaultStencilThicknessUnits | [string](#string) | optional | Default stencil thickness units. | +| defaultPartTempRise | [double](#double) | optional | Default part temp rise. | +| defaultPartTempRiseUnits | [string](#string) | optional | Default part temp rise units. | +| guessPartPropertiesEnabled | [bool](#bool) | optional | Whether to enable guess part properties. | + + + + + + + + +### CreateCcaFromModelingRegionRequest + +Request for creating CCA from a specified modeling region. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cCAsFromModelingRegions | [CreateCcaFromModelingRegionRequest.CCAFromModelingRegion](#CreateCcaFromModelingRegionRequest-CCAFromModelingRegion) | repeated | CCAs from modeling regions to add. | + + + + + + + + +### CreateCcaFromModelingRegionRequest.CCAFromModelingRegion + +Request for each individual property of cca + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Project CCA name. | +| modelingRegionID | [string](#string) | | ID of CCA's modeling region used to create new CCA. | +| description | [string](#string) | | CCA's description. | +| defaultSolderType | [string](#string) | optional | Default solder type. | +| defaultStencilThickness | [double](#double) | optional | Default stencil thickness. | +| defaultStencilThicknessUnits | [string](#string) | optional | Default stencil thickness units. | +| defaultPartTempRise | [double](#double) | optional | Default part temp rise. | +| defaultPartTempRiseUnits | [string](#string) | optional | Default part temp rise units. | +| guessPartProperties | [bool](#bool) | optional | Whether to enable guess part properties. | +| generateImageLayers | [bool](#bool) | optional | Whether to generate image layers | + + + + + + + + +### DeleteProjectRequest + +Request for deleting project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name of project to be deleted. | + + + + + + + + +### ExportProjectRequest + +Request for exporting the designated Sherlock project as a .zip file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| exportDesignFiles | [bool](#bool) | | If true, export all design files assigned to the project. | +| exportResultFiles | [bool](#bool) | | If true, export all analysis module results. | +| exportArchivedResults | [bool](#bool) | | If true, export all archived result files. | +| exportUserFiles | [bool](#bool) | | If true, export all user properties and custom data files. | +| exportLogFiles | [bool](#bool) | | If true, export all Sherlock console and application logs. | +| exportSystemData | [bool](#bool) | | If true, export all system technical data. | +| exportFileDirectory | [string](#string) | | Full path of the directory where the .zip file is to be exported. | +| exportFileName | [string](#string) | | Name of the zip file containing the project's exported data. | +| overwriteExistingFile | [bool](#bool) | | If true, an existing file will be overwritten. | + + + + + + + + +### GenCCAReportRequest + +Request for project CCA report. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | | Project CCA name. | +| author | [string](#string) | | Name of the author who generates the report. | +| company | [string](#string) | | Name of author's company. | + + + + + + + + +### GenCCAReportResponse + +Streams the project CCA report in chunks. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| content | [bytes](#bytes) | | A chunk of the project CCA report being returned in increments. | +| size | [int32](#int32) | | Size of the chunk returned. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### GenReportRequest + +Request for project report. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| author | [string](#string) | | Name of the author who generates the report. | +| company | [string](#string) | | Name of author's company. | + + + + + + + + +### GenReportResponse + +Streams the project report in chunks. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| content | [bytes](#bytes) | | A chunk of the project report being returned in increments. | +| size | [int32](#int32) | | Size of the chunk returned. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### ImportIPC2581Request + +Request for importing an IPC-2581 archive. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| archiveFile | [string](#string) | | Full path to the IPC-2581 archive file to be imported. | +| project | [string](#string) | | Sherlock project name. If empty, the filename will be used for the project name. | +| ccaName | [string](#string) | | Project CCA name. If empty, the filename will be used for the CCA name. | +| includeOtherLayers | [bool](#bool) | | Option to include other layers. | +| guessPartProperties | [bool](#bool) | | Option to guess part properties. | +| polylineSimplification | [bool](#bool) | | Option to enable polyline simplification. | +| polylineTolerance | [double](#double) | | Polyline simplification tolerance. | +| polylineToleranceUnits | [string](#string) | | Polyline simplification tolerance units. | + + + + + + + + +### ImportODBRequest + +Request for importing an ODB++ archive. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| archiveFile | [string](#string) | | Full path to the ODB++ archive file to be imported. | +| project | [string](#string) | | Sherlock project name. If empty, the filename will be used for the project name. | +| ccaName | [string](#string) | | Project CCA name. If empty, the filename will be used for the CCA name. | +| processLayerThickness | [bool](#bool) | | Option to assign stackup thickness. | +| includeOtherLayers | [bool](#bool) | | Option to include other layers. | +| processCutoutFile | [bool](#bool) | | Option to process cutouts. | +| guessPartProperties | [bool](#bool) | | Option to guess part properties. | +| imsStackup | [bool](#bool) | | Option to generate IMS stackup. | +| polylineSimplification | [bool](#bool) | | Option to enable polyline simplification. | +| polylineTolerance | [double](#double) | | Polyline simplification tolerance. | +| polylineToleranceUnits | [string](#string) | | Polyline simplification tolerance units. | + + + + + + + + +### ImportProjectZipRequest + +Request for importing a .zip project archive when Sherlock is in multiple project mode. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| category | [string](#string) | | Sherlock project category. | +| archiveFile | [string](#string) | | Full path to the .zip archive file containing the project data. | + + + + + + + + +### ImportProjectZipSingleModeRequest + +Request for importing a .zip project archive when Sherlock is in single project mode. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| projZipRequest | [ImportProjectZipRequest](#ImportProjectZipRequest) | | Encapsulates project name, category and full path to project .zip archive. | +| destFileDir | [string](#string) | | Directory in which the Sherlock project folder will be created. | + + + + + + + + +### ListCCAsRequest + +Request to list CCA's and sub-assembly CCA's for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to return. | + + + + + + + + +### ListCCAsResponse + +Represents the circuit cards, their properties, and sub-assemblies for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccas | [ListCCAsResponse.CCA](#ListCCAsResponse-CCA) | repeated | CCA's assigned to the project. | + + + + + + + + +### ListCCAsResponse.CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| subAssemblies | [ListCCAsResponse.CCA](#ListCCAsResponse-CCA) | repeated | Sub-assemblies assigned to the CCA. | + + + + + + + + +### ListStrainMapsRequest + +Request to list CCA strain maps for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to list strain maps for. | + + + + + + + + +### ListStrainMapsResponse + +Lists the strain maps assigned to the project CCA's. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of errors encountered. | +| ccaStrainMaps | [ListStrainMapsResponse.CcaStrainMap](#ListStrainMapsResponse-CcaStrainMap) | repeated | CCA strain maps assigned to the project. | + + + + + + + + +### ListStrainMapsResponse.CcaStrainMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| strainMaps | [string](#string) | repeated | Strain map names assigned to the CCA. | + + + + + + + + +### ListThermalMapsRequest + +Request to list Thermal map files and their types for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to list thermal maps for. | + + + + + + + + +### ListThermalMapsResponse + +Represents the thermal map files and their types for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of errors encountered. | +| ccaThermalMaps | [ListThermalMapsResponse.CcaThermalMap](#ListThermalMapsResponse-CcaThermalMap) | repeated | CCA thermal map files assigned to the project. | + + + + + + + + +### ListThermalMapsResponse.CcaThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Project CCA name. | +| thermalMaps | [ListThermalMapsResponse.CcaThermalMap.ThermalMap](#ListThermalMapsResponse-CcaThermalMap-ThermalMap) | repeated | Thermal map files assigned to the CCA. | + + + + + + + + +### ListThermalMapsResponse.CcaThermalMap.ThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fileName | [string](#string) | | Name of the Thermal Map file. | +| fileType | [string](#string) | | Thermal map file type. Possible values are: "Icepak Thermal Map (TMAP)", "Thermal Map (CSV)", "Thermal Map (Excel)", "Thermal Map (Image)". | + + + + + + + + +### ThermalMapFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fileName | [string](#string) | | The name of the thermal file to update. | +| fileType | [ThermalMapFile.FileType](#ThermalMapFile-FileType) | | Thermal file type. | +| fileComment | [string](#string) | | Include a comment or description for the file. | +| thermalBoardSide | [ThermalMapFile.ThermalBoardSide](#ThermalMapFile-ThermalBoardSide) | | Thermal board side. | +| csvExcelFile | [ThermalMapFile.CsvExcelFile](#ThermalMapFile-CsvExcelFile) | | Used to CSV and Excel files. | +| imageFile | [ThermalMapFile.ImageFile](#ThermalMapFile-ImageFile) | | Used to add properties to Image files. | +| thermalProfiles | [string](#string) | repeated | List of thermal profiles. | +| cca | [string](#string) | repeated | Project CCA Name. | + + + + + + + + +### ThermalMapFile.CsvExcelFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| headerRowCount | [int32](#int32) | | Number of rows before the column header in the file. | +| referenceIDColumn | [string](#string) | | Reference ID column. | +| temperatureColumn | [string](#string) | | Temperature column. | +| temperatureUnits | [string](#string) | | Units for temperature values. | +| numericFormat | [string](#string) | | Numeric format for values. | + + + + + + + + +### ThermalMapFile.ImageFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| coordinateUnits | [string](#string) | | Coordinate units used for board, lengend and image boundaries. | +| boardBounds | [ThermalMapFile.ImageFile.NodeCoordinate](#ThermalMapFile-ImageFile-NodeCoordinate) | repeated | Coordinates of the nodes which make up the board outline. | +| imageBounds | [ThermalMapFile.ImageFile.ImageCoordinate](#ThermalMapFile-ImageFile-ImageCoordinate) | | Coordinates of the board bounds within the image. | +| legendBounds | [ThermalMapFile.ImageFile.LegendCoordinate](#ThermalMapFile-ImageFile-LegendCoordinate) | | Coordinates of the bounds of legend within the image. | +| legendOrientation | [ThermalMapFile.ImageFile.LegendOrientation](#ThermalMapFile-ImageFile-LegendOrientation) | | Specify the legend orientation. | +| minTemperature | [double](#double) | | Minimum temperature value. | +| minTemperatureUnits | [string](#string) | | Units for minimum temperature value. | +| maxTemperature | [double](#double) | | Maximum temperature value. | +| maxTemperatureUnits | [string](#string) | | Units for maximum temperature value. | + + + + + + + + +### ThermalMapFile.ImageFile.ImageCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| imageX | [double](#double) | | X-coordinate of the upper left corner. | +| imageY | [double](#double) | | Y-coordinate of the upper left corner. | +| imageH | [double](#double) | | Height of the image. | +| imageW | [double](#double) | | Width of the image. | + + + + + + + + +### ThermalMapFile.ImageFile.LegendCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| legendX | [double](#double) | | X-coordinate of the upper left corner. | +| legendY | [double](#double) | | Y-coordinate of the upper left corner. | +| legendH | [double](#double) | | Height of the legend. | +| legendW | [double](#double) | | Width of the legend. | + + + + + + + + +### ThermalMapFile.ImageFile.NodeCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| vertexX | [double](#double) | | X-coordinate of the node. | +| vertexY | [double](#double) | | Y-coordinate of the node. | + + + + + + + + +### UpdateThermalMapRequest + +Request to update thermal map files to a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalMapFiles | [ThermalMapFile](#ThermalMapFile) | repeated | Thermal Map files. | + + + + + + + + +### UpdateThermalMapsResponse + +Response from updating thermal map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + + + +### AddStrainMapRequest.StrainMapFile.FileType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| CSV | 0 | Csv file. | +| Excel | 1 | Excel file. | +| Image | 2 | Image file. | + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendOrientation + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Horizontal | 0 | Horizontal legend orientation. | +| Vertical | 1 | Vertical legend orientation. | + + + + + +### ThermalMapFile.FileType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| CSV | 0 | Csv file. | +| Excel | 1 | Excel file. | +| Image | 2 | Image file. | +| TMAP | 3 | Icepack file. | + + + + + +### ThermalMapFile.ImageFile.LegendOrientation + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Horizontal | 0 | Horizontal legend orientation. | +| Vertical | 1 | Vertical legend orientation. | + + + + + +### ThermalMapFile.ThermalBoardSide + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Bottom | 0 | Bottom side of the board. | +| Both | 1 | Both sides of the board. | +| Top | 2 | Top side of the board. | + + + + + + + + + +### SherlockProjectService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| genReport | [.GenReportRequest](#GenReportRequest) | [.GenReportResponse](#GenReportResponse) stream | Generates the project report and return it via streaming. | +| genCCAReport | [.GenCCAReportRequest](#GenCCAReportRequest) | [.GenCCAReportResponse](#GenCCAReportResponse) stream | Generates the project CCA report and return it via streaming. | +| importODBArchive | [.ImportODBRequest](#ImportODBRequest) | [.ReturnCode](#ReturnCode) | Imports an ODB++ archive. | +| importIPC2581Archive | [.ImportIPC2581Request](#ImportIPC2581Request) | [.ReturnCode](#ReturnCode) | Imports an IPC-2581 archive. | +| importProjectZipArchive | [.ImportProjectZipRequest](#ImportProjectZipRequest) | [.ReturnCode](#ReturnCode) | Imports a zipped project archive -- multiple project mode. | +| importProjectZipArchiveSingleMode | [.ImportProjectZipSingleModeRequest](#ImportProjectZipSingleModeRequest) | [.ReturnCode](#ReturnCode) | Imports a zipped project archive -- single project mode. | +| deleteProject | [.DeleteProjectRequest](#DeleteProjectRequest) | [.ReturnCode](#ReturnCode) | Delete a project from Sherlock. | +| addStrainMap | [.AddStrainMapRequest](#AddStrainMapRequest) | [.AddStrainMapResponse](#AddStrainMapResponse) | Add a strain map files to a Sherlock project. | +| listStrainMaps | [.ListStrainMapsRequest](#ListStrainMapsRequest) | [.ListStrainMapsResponse](#ListStrainMapsResponse) | Returns a list of circuit cards and their assigned strain maps for a given Sherlock project. | +| listCCAs | [.ListCCAsRequest](#ListCCAsRequest) | [.ListCCAsResponse](#ListCCAsResponse) | Returns a list of circuit cards, their properties, and sub-assemblies for a given Sherlock project. | +| addProject | [.AddProjectRequest](#AddProjectRequest) | [.ReturnCode](#ReturnCode) | Add a project to Sherlock. | +| addCCA | [.AddCcaRequest](#AddCcaRequest) | [.ReturnCode](#ReturnCode) | Creates a new circuit card assembly. | +| listThermalMaps | [.ListThermalMapsRequest](#ListThermalMapsRequest) | [.ListThermalMapsResponse](#ListThermalMapsResponse) | Returns a list of thermal map files and their types for a given Sherlock project. | +| updateThermalMaps | [.UpdateThermalMapRequest](#UpdateThermalMapRequest) | [.UpdateThermalMapsResponse](#UpdateThermalMapsResponse) | Update thermal map files to a Sherlock project. | +| addThermalMaps | [.AddThermalMapRequest](#AddThermalMapRequest) | [.AddThermalMapResponse](#AddThermalMapResponse) | Add a thermal map to a Sherlock project. | +| exportProject | [.ExportProjectRequest](#ExportProjectRequest) | [.ReturnCode](#ReturnCode) | Exports project to a zipped archive file. | +| createCCAFromModelingRegion | [.CreateCcaFromModelingRegionRequest](#CreateCcaFromModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Creates a CCA from a given modeling region | + + + + + + + + +## SherlockService.proto + +Copyright 2020-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + +The APIs in this service should only be used for Sherlock integration with Workbench. + + + + +### ClientMessage + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| clientMessage | [string](#string) | | Incoming message from Workbench in bi-directional stream. | + + + + + + + + +### ExportRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportCcaName | [string](#string) | | CCA name. | +| destGeometryFile | [string](#string) | | Destination directory for exported geometry and materials. | +| systemName | [string](#string) | | gRPC system name. | +| componentName | [string](#string) | | gRPC component name. | +| analysis | [ExportRequest.ExportAnalysis](#ExportRequest-ExportAnalysis) | | Type of analysis to export. | + + + + + + + + +### ExportTraceReinforcementRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportCcaName | [string](#string) | | Name of CCA. | +| destGeometryFile | [string](#string) | | Destination directory for geometry files. | +| systemName | [string](#string) | | gRPC system name. | +| componentName | [string](#string) | | gRPC component name. | + + + + + + + + +### GetCCARequest + + + + + + + + + +### GetCCAResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaNames | [string](#string) | repeated | List of CCA names for a specified project. | + + + + + + + + +### ImportRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| resultFile | [string](#string) | | Name of result file (.rst) to import. | +| projectName | [string](#string) | | Name of project associated with the result file. | +| ccaName | [string](#string) | | Name of CCA associated with the result file. | +| analysis | [ImportRequest.ImportAnalysis](#ImportRequest-ImportAnalysis) | | Type of analysis result. | +| modalResultFile | [string](#string) | | File name of modal result. | +| phaseName | [string](#string) | | The life cycle phase of the event associated with the results file. | +| eventName | [string](#string) | | The life cycle event associated with the results file. | +| modelTransform | [ImportRequest.ModelTransform](#ImportRequest-ModelTransform) | | Model transformation info associated with the results. | +| analysisImports | [ImportRequest.AnalysisImport](#ImportRequest-AnalysisImport) | repeated | List of various analysis results to import and the associated files. | + + + + + + + + +### ImportRequest.AnalysisImport + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of CCA. | +| analysis | [ImportRequest.ImportAnalysis](#ImportRequest-ImportAnalysis) | | Type of analysis result. | +| rsts | [ImportRequest.AnalysisImport.rst](#ImportRequest-AnalysisImport-rst) | repeated | List of results file to import. | +| modelTransform | [ImportRequest.ModelTransform](#ImportRequest-ModelTransform) | | Model transformation info for the imported analysis results. | + + + + + + + + +### ImportRequest.AnalysisImport.rst + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| resultFile | [string](#string) | | Results file to import. | +| modalResultFile | [string](#string) | | Modal results file to import. | +| phaseName | [string](#string) | | The life cycle phase of the event associated with the results file. | +| eventName | [string](#string) | | The life cycle event associated with the results file. | + + + + + + + + +### ImportRequest.ModelTransform + +Indicate the model transform detection to use. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| detectTransform | [ImportRequest.ModelTransform.DetectTransform](#ImportRequest-ModelTransform-DetectTransform) | | Type of model transformation detection to use. | +| transformX | [double](#double) | | Model translation applied in X direction. | +| transformY | [double](#double) | | Model translation applied in Y direction. | +| transformZ | [double](#double) | | Model translation applied in Z direction. | +| transformRotX | [double](#double) | | Model rotation (in degrees) applied in X direction. | +| transformRotY | [double](#double) | | Model rotation (in degrees) applied in Y direction. | +| transformRotZ | [double](#double) | | Model rotation (in degrees) applied in Z direction. | + + + + + + + + +### OpenProjectRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Directory location of the project to open. | + + + + + + + + +### SaveProjectRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Directory location where the project is to be saved. | + + + + + + + + +### ServerMessage + +This is the message that is sent to Workbench whenever a relevant addition/update/deletion is made within Sherlock +that would affect the same project that is open in WB. + +Note that the enum Item refers to Workbench module terminology for the request changes. +These items are in a hierarchy and any changes or modifications flow downstream: +Project -> Setup -> Life Prediction + +If the Project item needs to be updated then that automatically means that +Setup and Life Prediction will be updated at well. Therefore, only one ServerMessage needs to +be sent to Workbench with Item = Project. + +States are all inclusive based on the states that are recognized in Workbench. Some of these may never need to be used +in ServerMessage but the enum contains the complete set just in case they are needed in the future, i.e., if the granularity +of the Sherlock changes become more finely-grained. For now we are using just the Modified state when constructing a +ServerMessage and sending it to WB. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| newState | [ServerMessage.State](#ServerMessage-State) | | The enum represents the states that are recognized in Workbench, inclusive. For now, Sherlock is just returning State.Modified. | +| updatedItem | [ServerMessage.Item](#ServerMessage-Item) | | Represents the first module in Workbench that is affected by the Sherlock change. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### SetWorkingDirRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Path to set as working directory location for Sherlock projects. | + + + + + + + + + + +### ExportRequest.ExportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NF | 0 | Natural Frequency analysis type. | +| HV | 1 | Harmonic Vibe analysis type. | +| ICT | 2 | ICT Analysis type. | +| SH | 3 | Mechanical Shock analysis type.` | +| RV | 4 | Random Vibe analysis type. | + + + + + +### ImportRequest.ImportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NaturalFreq | 0 | Natural Frequency result type. | +| HarmonicVibe | 1 | Harmonic Vibe result type. | +| ICTAnalysis | 2 | ICT Analysis result type. | +| MechanicalShock | 3 | Mechanical Shock result type. | +| RandomVibe | 4 | Random Vibe result type. | + + + + + +### ImportRequest.ModelTransform.DetectTransform + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| DISABLED | 0 | No model transformation is performed. | +| ENABLED | 1 | Sherlock automatically detects the model transformation. | +| MANUAL | 2 | User provides model transformation parameters. | + + + + + +### ServerMessage.Item + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Project | 0 | Project = WB/Mech Model Change. | +| Setup | 1 | Setup = Sherlock Pre. | +| LifePrediction | 2 | Life Prediction = Sherlock Post Change. | + + + + + +### ServerMessage.State + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Disabled | 0 | Workbench state -- not currently used. | +| EditRequired | 1 | Workbench state -- not currently used. | +| Incomplete | 2 | Workbench state -- not currently used. | +| InputChangesPending | 3 | Workbench state -- not currently used. | +| InternalError | 4 | Workbench state -- not currently used. | +| Interrupted | 5 | Workbench state -- not currently used. | +| Modified | 6 | A change occurred in Sherlock for which Workbench is to be notified. Only state currently used in Sherlock for Workbench notification. | +| OutOfDate | 7 | Workbench state -- not currently used. | +| Unfulfilled | 8 | Workbench state -- not currently used. | +| UpToDate | 9 | Workbench state -- not currently used. | + + + + + + + + + +### SherlockService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| openProject | [.OpenProjectRequest](#OpenProjectRequest) | [.ReturnCode](#ReturnCode) | Opens specific Sherlock project given the full path. | +| saveProject | [.SaveProjectRequest](#SaveProjectRequest) | [.ReturnCode](#ReturnCode) | Saves all Sherlock project files given the destination path. | +| export | [.ExportRequest](#ExportRequest) | [.ReturnCode](#ReturnCode) | Export request for geometry and materials given the full destination directory and file names. | +| importRst | [.ImportRequest](#ImportRequest) | [.ReturnCode](#ReturnCode) | Request for Sherlock to import the given .rst file. | +| getCCA | [.GetCCARequest](#GetCCARequest) | [.GetCCAResponse](#GetCCAResponse) | Returns a list of circuit board names given a project name. | +| exportTraceReinforcement | [.ExportTraceReinforcementRequest](#ExportTraceReinforcementRequest) | [.ReturnCode](#ReturnCode) | Export Trace Reinforcement model request given the full destination directory and file names. | +| isSherlockClientLoading | [.IsSherlockClientLoadingRequest](#IsSherlockClientLoadingRequest) | [.ReturnCode](#ReturnCode) | Check if SherlockClient is still loading. | +| setWorkingDir | [.SetWorkingDirRequest](#SetWorkingDirRequest) | [.ReturnCode](#ReturnCode) | Set working directory. In the case where there is not already a project loaded in Sherlock, this API sets the default project directory for any new project created. In the case where there is already a project loaded in Sherlock, this API reloads the project from the new directory provided and refreshes the Sherlock UI. | +| eventCommunication | [.ClientMessage](#ClientMessage) stream | [.ServerMessage](#ServerMessage) stream | Bi-directional stream between Sherlock and Workbench that notifies Workbench of specific changes/updates made within Sherlock that would affect the same project open in Workbench. | + + + + + + + + +## SherlockStackupService.proto + +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### GenStackupRequest + +Request to generate stackup layers for a CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| boardThickness | [double](#double) | | Board thickness. | +| boardThicknessUnit | [string](#string) | | Board thickness unit. | +| pcbMaterialManufacturer | [string](#string) | | PCB material manufacturer. | +| pcbMaterialGrade | [string](#string) | | PCB material grade. | +| pcbMaterial | [string](#string) | | PCB material. | +| conductorLayersCnt | [int32](#int32) | | Number of conductor layers. | +| signalLayerThickness | [double](#double) | | Signal layer thickness. | +| signalLayerThicknessUnit | [string](#string) | | Signal layer thickness unit. | +| minLaminateThickness | [double](#double) | | Minimum laminate layer thickness. | +| minLaminateThicknessUnit | [string](#string) | | Minimum laminate layer thickness unit. | +| maintainSymmetry | [bool](#bool) | | If set to true, maintain symmetry. | +| powerLayerThickness | [double](#double) | | Power layer thickness. | +| powerLayerThicknessUnit | [string](#string) | | Power layer thickness unit. | + + + + + + + + +### GetLayerCountRequest + +Request the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### GetLayerCountResponse + +Represents the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| count | [int32](#int32) | | Number of stackup layers. | + + + + + + + + +### GetStackupPropsRequest + +Request a summary of the stackup properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### GetStackupPropsResponse + +Represents a summary of the stackup properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boardDimension | [string](#string) | | Board dimension. | +| boardThickness | [string](#string) | | Board thickness. | +| density | [string](#string) | | Board density. | +| conductorLayersCnt | [string](#string) | | Number of conductor layers. | +| ctExy | [string](#string) | | CTExy. | +| ctEz | [string](#string) | | CTEz. | +| exy | [string](#string) | | Exy. | +| ez | [string](#string) | | Ez. | + + + + + + + + +### GetTotalConductorThicknessRequest + +Request the total thickness on all conductor layers in a stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | + + + + + + + + +### GetTotalConductorThicknessResponse + +Represents the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| totalThickness | [double](#double) | | Total thickness. | + + + + + + + + +### ListConductorLayersRequest + +Request for a list of conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListConductorLayersResponse + +Represents the properties for all CCAs and their corresponding conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaConductorLayerProps | [ListConductorLayersResponse.CCAConductorLayerProp](#ListConductorLayersResponse-CCAConductorLayerProp) | repeated | List of CCAs and their associated conductor layers for a specified project. | + + + + + + + + +### ListConductorLayersResponse.CCAConductorLayerProp + +Represents a CCA and its conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| conductorLayerProps | [ListConductorLayersResponse.CCAConductorLayerProp.ConductorLayerProp](#ListConductorLayersResponse-CCAConductorLayerProp-ConductorLayerProp) | repeated | List of conductor layers and their associated properties for a specified CCA. | + + + + + + + + +### ListConductorLayersResponse.CCAConductorLayerProp.ConductorLayerProp + +Represents a conductor layer and its properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| layer | [string](#string) | | An internal layer ID associated with this conductor layer. | +| type | [string](#string) | | Layer type (i.e. SIGNAL, POWER, SUBSTRATE). | +| material | [string](#string) | | Name of this conductor material. | +| thickness | [double](#double) | | Conductor layer thickness. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| resinMaterial | [string](#string) | | Resin material. | +| density | [double](#double) | | Layer density. | +| CTExy | [double](#double) | | CTExy. | +| CTEz | [double](#double) | | CTEz. | +| Exy | [double](#double) | | Exy. | +| Ez | [double](#double) | | Ez. | + + + + + + + + +### ListConductorMaterialsRequest + +Request to list valid conductor materials. + + + + + + + + +### ListConductorMaterialsResponse + +Represents a list of valid conductor materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| conductorMaterial | [string](#string) | repeated | Conductor material name. | + + + + + + + + +### ListConstructionStylesRequest + +Request to list valid construction styles. + + + + + + + + +### ListConstructionStylesResponse + +Represents a list of valid construction styles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| constructionStyle | [string](#string) | repeated | Construction style. | + + + + + + + + +### ListFiberMaterialsRequest + +Request to list valid fiber materials. + + + + + + + + +### ListFiberMaterialsResponse + +Represents a list of valid fiber materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| fiberMaterial | [string](#string) | repeated | Fiber material name. | + + + + + + + + +### ListLaminateMaterialsManufacturersRequest + +Request to list valid names of materials manufacturers. + + + + + + + + +### ListLaminateMaterialsManufacturersResponse + +Represents a list of valid names of materials manufacturers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| manufacturer | [string](#string) | repeated | Manufacturer name. | + + + + + + + + +### ListLaminateMaterialsRequest + +Request to list materials from a given manufacturer. +If manufacturer is empty, all manufacturers and their materials will be returned. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| manufacturer | [string](#string) | | Manufacturer name. | + + + + + + + + +### ListLaminateMaterialsResponse + +Represents a list of materials from a given manufacturer. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| manufacturerMaterials | [ListLaminateMaterialsResponse.ManufacturerMaterials](#ListLaminateMaterialsResponse-ManufacturerMaterials) | repeated | List of manufacturers and their associated grades and materials. | + + + + + + + + +### ListLaminateMaterialsResponse.ManufacturerMaterials + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| manufacturer | [string](#string) | | Manufacturer name. | +| gradeMaterials | [ListLaminateMaterialsResponse.ManufacturerMaterials.GradeMaterials](#ListLaminateMaterialsResponse-ManufacturerMaterials-GradeMaterials) | repeated | List of Grades and their associated materials. | + + + + + + + + +### ListLaminateMaterialsResponse.ManufacturerMaterials.GradeMaterials + +Represents a grade and the materials with this grade. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| grade | [string](#string) | | Grade. | +| laminateMaterial | [string](#string) | repeated | Material name. | + + + + + + + + +### ListLaminateThicknessUnitsRequest + +Request to list valid laminate thickness units. + + + + + + + + +### ListLaminateThicknessUnitsResponse + +Represents a list of valid laminate thickness units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| unit | [string](#string) | repeated | Thickness unit. | + + + + + + + + +### ListLaminatesRequest + +Request for a list of laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListLaminatesResponse + +Represents the properties for all CCAs and their corresponding laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaLaminateProps | [ListLaminatesResponse.CCALaminateProp](#ListLaminatesResponse-CCALaminateProp) | repeated | List of CCAs and their corresponding laminate layers. | + + + + + + + + +### ListLaminatesResponse.CCALaminateProp + +Represents a CCA and its laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| laminateProps | [ListLaminatesResponse.CCALaminateProp.LaminateProp](#ListLaminatesResponse-CCALaminateProp-LaminateProp) | repeated | List of laminate layers with associated properties for a specified CCA. | + + + + + + + + +### ListLaminatesResponse.CCALaminateProp.LaminateProp + +Represents a laminate layer and its properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| layer | [string](#string) | | An internal layer ID associated with this laminate layer. | +| manufacturer | [string](#string) | | Manufacturer name of this material. | +| grade | [string](#string) | | Grade of this material. | +| material | [string](#string) | | Name of this material. | +| thickness | [double](#double) | | Laminate thickness. | +| thicknessUnit | [string](#string) | | Laminate thickness unit. | +| constructionStyle | [string](#string) | | Construction style. | +| glassConstructions | [ListLaminatesResponse.CCALaminateProp.LaminateProp.GlassConstruction](#ListLaminatesResponse-CCALaminateProp-LaminateProp-GlassConstruction) | repeated | List of Glass Construction info for a laminate layer. | +| fiberMaterial | [string](#string) | | Fiber material if the construction style is glass. | +| conductorMaterial | [string](#string) | | Conductor material. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| density | [double](#double) | | Layer density. | +| CTExy | [double](#double) | | CTExy. | +| CTEz | [double](#double) | | CTEz. | +| Exy | [double](#double) | | Exy. | +| Ez | [double](#double) | | Ez. | + + + + + + + + +### ListLaminatesResponse.CCALaminateProp.LaminateProp.GlassConstruction + +Represents the layers with a glass construction. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| style | [string](#string) | | Glass construction style. | +| resinPercentage | [double](#double) | | Glass construction resin percentage. | +| thickness | [double](#double) | | Glass construction thickness. | +| thicknessUnit | [string](#string) | | Glass construction thickness unit. | + + + + + + + + +### UpdateConductorLayerRequest + +Represents the conductor layer properties requested to be updated. +To update a thickness, a thickness unit must be provided. +Any property left out or set to "" or 0.0 will not be updated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| layer | [string](#string) | | The layer ID associated with this conductor layer. | +| type | [string](#string) | | Layer type (i.e. SIGNAL, POWER, SUBSTRATE). | +| material | [string](#string) | | Name of this conductor material. | +| thickness | [double](#double) | | Conductor layer thickness. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| resinMaterial | [string](#string) | | Resin material. | + + + + + + + + +### UpdateLaminateRequest + +Represents the laminate properties requested to be updated. +To update the material, valid values must be provided for manufacturer, grade, and material. +To update a thickness, a thickness unit must be provided. +Glass construction should only be set when the construction style is not the "DEFAULT" value. +Any property left out or set to "" or 0.0 will not be updated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| layer | [string](#string) | | The internal layer ID associated with this laminate layer. | +| manufacturer | [string](#string) | | Manufacturer name of this material. Must be provided along with grade and material name. | +| grade | [string](#string) | | Grade of this material. | +| material | [string](#string) | | Name of this material. | +| thickness | [double](#double) | | Laminate thickness. | +| thicknessUnit | [string](#string) | | Laminate thickness unit. | +| constructionStyle | [string](#string) | | Construction style. | +| glassConstruction | [UpdateLaminateRequest.GlassConstruction](#UpdateLaminateRequest-GlassConstruction) | repeated | List of Glass Construction info for a laminate layer. | +| fiberMaterial | [string](#string) | | Fiber material. Only updated if glass construction is selected. | +| conductorMaterial | [string](#string) | | Conductor material. | +| conductorPercent | [string](#string) | | Conductor percentage. | + + + + + + + + +### UpdateLaminateRequest.GlassConstruction + +Represents the layers with a glass construction. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| style | [string](#string) | | Glass construction style. | +| resinPercentage | [double](#double) | | Glass construction resin percentage. | +| thickness | [double](#double) | | Glass construction thickness. | +| thicknessUnit | [string](#string) | | Glass construction thickness unit. | + + + + + + + + + + + + + + +### SherlockStackupService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| listLaminates | [.ListLaminatesRequest](#ListLaminatesRequest) | [.ListLaminatesResponse](#ListLaminatesResponse) | Returns a list of project's CCAs and their laminates. | +| updateLaminate | [.UpdateLaminateRequest](#UpdateLaminateRequest) | [.ReturnCode](#ReturnCode) | Update properties for a given laminate layer. | +| listLaminateThicknessUnits | [.ListLaminateThicknessUnitsRequest](#ListLaminateThicknessUnitsRequest) | [.ListLaminateThicknessUnitsResponse](#ListLaminateThicknessUnitsResponse) | List all the supported laminate layer thickness units. | +| listConductorMaterials | [.ListConductorMaterialsRequest](#ListConductorMaterialsRequest) | [.ListConductorMaterialsResponse](#ListConductorMaterialsResponse) | List all conductor materials. | +| listFiberMaterials | [.ListFiberMaterialsRequest](#ListFiberMaterialsRequest) | [.ListFiberMaterialsResponse](#ListFiberMaterialsResponse) | List all fiber materials. | +| listLaminateMaterialsManufacturers | [.ListLaminateMaterialsManufacturersRequest](#ListLaminateMaterialsManufacturersRequest) | [.ListLaminateMaterialsManufacturersResponse](#ListLaminateMaterialsManufacturersResponse) | List all laminate materials manufacturers. | +| listLaminateMaterials | [.ListLaminateMaterialsRequest](#ListLaminateMaterialsRequest) | [.ListLaminateMaterialsResponse](#ListLaminateMaterialsResponse) | List all laminate materials (both based on manufacturer specified or without). If manufacturer is empty or not provided, then all manufacturers and their laminate materials will be returned. If a manufacturer is provided, then only that manufacturer's laminate materials will be returned. | +| listConstructionStyles | [.ListConstructionStylesRequest](#ListConstructionStylesRequest) | [.ListConstructionStylesResponse](#ListConstructionStylesResponse) | List all construction styles. | +| listConductorLayers | [.ListConductorLayersRequest](#ListConductorLayersRequest) | [.ListConductorLayersResponse](#ListConductorLayersResponse) | Returns a list of project's CCAs and their conductor layers. | +| updateConductorLayer | [.UpdateConductorLayerRequest](#UpdateConductorLayerRequest) | [.ReturnCode](#ReturnCode) | Update properties for a given conductor layer. | +| getLayerCount | [.GetLayerCountRequest](#GetLayerCountRequest) | [.GetLayerCountResponse](#GetLayerCountResponse) | Returns the number of stackup layers. | +| getTotalConductorThickness | [.GetTotalConductorThicknessRequest](#GetTotalConductorThicknessRequest) | [.GetTotalConductorThicknessResponse](#GetTotalConductorThicknessResponse) | Returns the total thickness for all conductor layers. | +| getStackupProps | [.GetStackupPropsRequest](#GetStackupPropsRequest) | [.GetStackupPropsResponse](#GetStackupPropsResponse) | Returns a summary of the stackup properties. | +| genStackup | [.GenStackupRequest](#GenStackupRequest) | [.ReturnCode](#ReturnCode) | Generate stackup layers. | + + + + + +## Scalar Value Types + +| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby | +| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- | +| double | | double | double | float | float64 | double | float | Float | +| float | | float | float | float | float32 | float | float | Float | +| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) | +| uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) | +| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) | +| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum | +| sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | +| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) | +| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) | + diff --git a/2025R1_Test/sherlock-split-files/input-file/index.md b/2025R1_Test/sherlock-split-files/input-file/index.md new file mode 100644 index 0000000000..5cc2e4c797 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/input-file/index.md @@ -0,0 +1,6137 @@ +# Protocol Documentation + + + + + + +## SherlockAnalysisService.proto +@Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### GetHarmonicVibeInputFieldsRequest +Request to list the valid Harmonic Vibe input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +### GetHarmonicVibeInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Harmonic Vibe input fields. | + + + + + + + + +### GetICTAnalysisInputFieldsRequest +Request to list the valid ICT analysis input fields given the user configuration. + + + + + + + + +### GetICTAnalysisInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of ICT Analysis input fields. | + + + + + + + + +### GetMechanicalShockInputFieldsRequest +Request to list the valid mechanical shock input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +### GetMechanicalShockInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Mechanical Shock input fields for a model source. | + + + + + + + + +### GetNaturalFrequencyInputFieldsRequest +Request to list the valid natural frequency input fields given the user configuration. + + + + + + + + +### GetNaturalFrequencyInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Natural Frequency input fields. | + + + + + + + + +### GetPcbModelingInputFieldsRequest +Request to list the valid PCB Modeling input fields given the user configuration. + + + + + + + + +### GetPcbModelingInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Pcb Modeling input fields. | + + + + + + + + +### GetRandomVibeInputFieldsRequest +Request to list the valid random vibe input fields for the provided model source and user configuration. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | + + + + + + + + +### GetRandomVibeInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Random Vibe input fields. | + + + + + + + + +### GetSolderFatigueInputFieldsRequest +Request to list the valid solder fatigue input fields given the user configuration. + + + + + + + + +### GetSolderFatigueInputFieldsResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fieldName | [string](#string) | repeated | List of Solder Fatigue input fields. | + + + + + + + + +### RunAnalysisRequest +Request to run one or more Sherlock analysis given the project path, CCA name, analyses, lifecycle phases and events. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| analyses | [RunAnalysisRequest.Analysis](#RunAnalysisRequest-Analysis) | repeated | List of Analyses to run. | + + + + + + + + +### RunAnalysisRequest.Analysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [RunAnalysisRequest.Analysis.AnalysisType](#RunAnalysisRequest-Analysis-AnalysisType) | | Type of Analysis to run. | +| phases | [RunAnalysisRequest.Analysis.Phase](#RunAnalysisRequest-Analysis-Phase) | repeated | List of Phases for each Analysis to run. | + + + + + + + + +### RunAnalysisRequest.Analysis.Phase + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle phase name. | +| events | [RunAnalysisRequest.Analysis.Phase.Event](#RunAnalysisRequest-Analysis-Phase-Event) | repeated | List of life cycle Events. | + + + + + + + + +### RunAnalysisRequest.Analysis.Phase.Event + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle event name. | + + + + + + + + +### RunStrainMapAnalysisRequest +Request to run Sherlock strain map analysis given the project name, CCA name, and strain maps. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name of the main CCA for the analysis. | +| strainMapAnalyses | [RunStrainMapAnalysisRequest.StrainMapAnalysis](#RunStrainMapAnalysisRequest-StrainMapAnalysis) | repeated | List of Strain Map Analyses to run. | + + + + + + + + +### RunStrainMapAnalysisRequest.StrainMapAnalysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [RunStrainMapAnalysisRequest.StrainMapAnalysis.AnalysisType](#RunStrainMapAnalysisRequest-StrainMapAnalysis-AnalysisType) | | Type of Strain Map analysis to run. | +| eventStrainMaps | [RunStrainMapAnalysisRequest.StrainMapAnalysis.EventStrainMap](#RunStrainMapAnalysisRequest-StrainMapAnalysis-EventStrainMap) | repeated | List of Strain Map events to run. | + + + + + + + + +### RunStrainMapAnalysisRequest.StrainMapAnalysis.EventStrainMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | Life cycle phase name. | +| eventName | [string](#string) | | Life cycle event name. | +| pcbSide | [string](#string) | | PCB side for the strain map. Supported values are: TOP, BOTTOM. | +| strainMap | [string](#string) | | Strain map assigned to the event. | +| subAssemblyName | [string](#string) | optional | The name of the sub-assembly CCA to be assigned the strain map. | + + + + + + + + +### UpdateHarmonicVibePropsRequest +Request to update the harmonic vibe analysis properties for one or more CCA's +in the project indicated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| harmonicVibeProperties | [UpdateHarmonicVibePropsRequest.HarmonicVibe](#UpdateHarmonicVibePropsRequest-HarmonicVibe) | repeated | List of HarmonicVibe analysis properties to update. | + + + + + + + + +### UpdateHarmonicVibePropsRequest.HarmonicVibe + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | CCA name for which the harmonic vibe properties are set. | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | +| harmonicVibeCount | [int32](#int32) | optional | Number of harmonic result layers to generate. | +| harmonicVibeDamping | [string](#string) | optional | Modal Damping Ratio(s). | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| filterByEventFrequency | [bool](#bool) | optional | Flag indicating if harmonic results outside selected event range are imported. | +| naturalFreqMin | [uint32](#uint32) | optional | Min Frequency. For NX Nastran analysis only. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. For NX Nastran analysis only. | +| naturalFreqMax | [uint32](#uint32) | optional | Max Frequency. For NX Nastran analysis only. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. For NX Nastran analysis only. | +| reuseModalAnalysis | [bool](#bool) | optional | Reuse Natural Frequency. For NX Nastran analysis only. | + + + + + + + + +### UpdateICTAnalysisPropsRequest +Request to update ICT Analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| ictAnalysisProperties | [UpdateICTAnalysisPropsRequest.ICTAnalysis](#UpdateICTAnalysisPropsRequest-ICTAnalysis) | repeated | List of ICTAnalysis properties to update for each CCA in a project. | + + + + + + + + +### UpdateICTAnalysisPropsRequest.ICTAnalysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| applicationTime | [double](#double) | optional | Application Time. | +| applicationTimeUnits | [string](#string) | optional | Application Time Units. | +| numberOfEvents | [uint32](#uint32) | optional | Number of Events. | +| partValidationEnabled | [bool](#bool) | optional | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| ictResultCount | [int32](#int32) | optional | Number of ICT layers to generate when using thermal analysis. | + + + + + + + + +### UpdateMechanicalShockPropsRequest +Request to update the mechanical shock analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| mechanicalShockProperties | [UpdateMechanicalShockPropsRequest.MechanicalShock](#UpdateMechanicalShockPropsRequest-MechanicalShock) | repeated | List of MechanicalShock properties to update. | + + + + + + + + +### UpdateMechanicalShockPropsRequest.MechanicalShock + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| modelSource | [ModelSource](#ModelSource) | optional | Default is GENERATED. | +| shockResultCount | [int32](#int32) | optional | Mechanical Shock Result Count. | +| criticalShockStrain | [double](#double) | optional | Critical Shock Strain. | +| criticalShockStrainUnits | [string](#string) | optional | Critical Shock Strain units. | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Flag indicating if material assignment is required. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| naturalFreqMin | [uint32](#uint32) | optional | Min Frequency. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. | +| naturalFreqMax | [uint32](#uint32) | optional | Max Frequency. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | + + + + + + + + +### UpdateNaturalFrequencyPropsRequest +Request to update natural frequency analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | | CCA name. | +| naturalFreqCount | [int32](#int32) | | NF Result Count. | +| naturalFreqMin | [double](#double) | | Min Frequency. | +| naturalFreqMinUnits | [string](#string) | | Min Frequency units (HZ, KHZ, MHZ, or GHZ). | +| naturalFreqMax | [double](#double) | | Max Frequency. | +| naturalFreqMaxUnits | [string](#string) | | Max Frequency units (HZ, KHZ, MHZ, or GHZ). | +| partValidationEnabled | [bool](#bool) | | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | | Require Material Assignment. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units (C, F, or K). | + + + + + + + + +### UpdatePartModelingRequest +Request to update FEA part modeling properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partEnabled | [bool](#bool) | | Whether to enable part modeling. Ignores all other fields if part modeling is disabled. | +| partMinSize | [double](#double) | optional | The minimum part size. | +| partMinSizeUnits | [string](#string) | optional | Units for minimum part size. | +| partElemOrder | [string](#string) | optional | Element order. | +| partMaxEdgeLength | [double](#double) | optional | Maximum mesh size. | +| partMaxEdgeLengthUnits | [string](#string) | optional | Units for maximum mesh size. | +| partMaxVertical | [double](#double) | optional | Vertical mesh size. | +| partMaxVerticalUnits | [string](#string) | optional | Units for vertical mesh size. | +| partResultsFiltered | [bool](#bool) | optional | Whether to enable filtered part results. | + + + + + + + + +### UpdatePartsListValidationPropsRequest +Request to update the Parts List Validation properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| partsListValidationProperties | [UpdatePartsListValidationPropsRequest.PartsListValidation](#UpdatePartsListValidationPropsRequest-PartsListValidation) | repeated | Properties for each CCA in the project. | + + + + + + + + +### UpdatePartsListValidationPropsRequest.PartsListValidation + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| partLibrary | [string](#string) | optional | Part library name. | +| processUseAVL | [bool](#bool) | optional | Process option to use AVL. | +| processUseWizard | [bool](#bool) | optional | Process option to use Wizard. | +| processCheckConfirmedProperties | [bool](#bool) | optional | Process option to check confirmed properties. | +| processCheckPartNumbers | [bool](#bool) | optional | Process option to check part numbers. | +| matching | [MatchingMode](#MatchingMode) | optional | Matching type. | +| avlRequireInternalPartNumber | [bool](#bool) | optional | AVL require internal part number. | +| avlRequireApprovedDescription | [bool](#bool) | optional | AVL require approved description. | +| avlRequireApprovedManufacturer | [bool](#bool) | optional | AVL require approved manufacturer. | + + + + + + + + +### UpdatePcbModelingPropsRequest +Request to update FEA analysis PCB Modeling properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaNames | [string](#string) | repeated | The CCA names for which to assign the PCB modeling parameters. | +| analyses | [UpdatePcbModelingPropsRequest.Analysis](#UpdatePcbModelingPropsRequest-Analysis) | repeated | List of Analysis message types. | + + + + + + + + +### UpdatePcbModelingPropsRequest.Analysis + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| type | [UpdatePcbModelingPropsRequest.Analysis.AnalysisType](#UpdatePcbModelingPropsRequest-Analysis-AnalysisType) | | The type of analysis for which PCB modeling properties apply. | +| modelType | [UpdatePcbModelingPropsRequest.Analysis.PcbModelType](#UpdatePcbModelingPropsRequest-Analysis-PcbModelType) | | The PCB modeling mesh type. | +| modelingRegionEnabled | [bool](#bool) | | Indicates if modeling regions are enabled. | +| pcbMaterialModel | [UpdatePcbModelingPropsRequest.Analysis.PcbMaterialModel](#UpdatePcbModelingPropsRequest-Analysis-PcbMaterialModel) | | The PCB modeling PCB model type. | +| pcbMaxMaterials | [int32](#int32) | optional | The number of PCB materials for Uniform Elements and Layered Elements PCB model types. | +| pcbElemOrder | [ElementOrder](#ElementOrder) | | The element order for PCB elements. | +| pcbMaxEdgeLength | [double](#double) | | The maximum mesh size for PCB elements. | +| pcbMaxEdgeLengthUnits | [string](#string) | | The length units for the maximum mesh size. | +| pcbMaxVertical | [double](#double) | | The maximum vertical mesh size for PCB elements. | +| pcbMaxVerticalUnits | [string](#string) | | The length units for the maximum vertical mesh size. | +| quadsPreferred | [bool](#bool) | | Indicates that the meshing engine should attempt to generate quad-shaped elements when creating the mesh. | + + + + + + + + +### UpdateRandomVibePropsRequest +Request to update random vibe analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | | CCA name. | +| randomVibeDamping | [string](#string) | optional | Modal Damping Ratio(s). | +| naturalFreqMin | [double](#double) | optional | Min Frequency. For NX Nastran analysis only. | +| naturalFreqMinUnits | [string](#string) | optional | Min Frequency units. For NX Nastran analysis only. | +| naturalFreqMax | [double](#double) | optional | Max Frequency. For NX Nastran analysis only. | +| naturalFreqMaxUnits | [string](#string) | optional | Max Frequency units. For NX Nastran analysis only. | +| analysisTemp | [double](#double) | optional | Temperature. | +| analysisTempUnits | [string](#string) | optional | Temperature units. | +| partValidationEnabled | [bool](#bool) | optional | Part Validation. | +| forceModelRebuild | [string](#string) | optional | Model Creation. Valid values are "FORCE" or "AUTO". | +| reuseModalAnalysis | [bool](#bool) | optional | Reuse Natural Frequency. For NX Nastran analysis only. | +| performNFFreqRangeCheck | [bool](#bool) | optional | Frequency Range Check. For NX Nastran analysis only. | +| requireMaterialAssignmentEnabled | [bool](#bool) | optional | Require Material Assignment. | +| modelSource | [ModelSource](#ModelSource) | optional | Optional model source. Default: GENERATED. | +| strainMapNaturalFreqs | [string](#string) | optional | Comma-separated list of natural frequencies for strain map analysis. | + + + + + + + + +### UpdateSolderFatiguePropsRequest +Request to update solder fatigue properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock Project name. | +| solderFatigueProperties | [UpdateSolderFatiguePropsRequest.SolderFatigue](#UpdateSolderFatiguePropsRequest-SolderFatigue) | repeated | List of SolderFatigue properties to update for a CCA. | + + + + + + + + +### UpdateSolderFatiguePropsRequest.SolderFatigue + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| solderMaterial | [string](#string) | optional | Name of the solder material. | +| partTemp | [double](#double) | optional | Part temperature rise. | +| partTempUnits | [string](#string) | optional | Part temperature rise units. | +| partTempRiseMinEnabled | [bool](#bool) | optional | Flag indicating if part temperature minimum rise should be enabled. | +| partValidationEnabled | [bool](#bool) | optional | Flag indicating if part validation should be performed. | + + + + + + + + +### UpdateThermalMechPropsRequest +Request to update thermal mech analysis properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name. | +| ccaName | [string](#string) | repeated | CCA names. | +| thermalResultCount | [int32](#int32) | | Thermal Mech Result Count. | +| partValidationEnabled | [bool](#bool) | | Part Validation. | +| requireMaterialAssignmentEnabled | [bool](#bool) | | Require Material Assignment. | + + + + + + + + + + +### ElementOrder +Enumeration defining the types of supported element orders. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownOrder | 0 | Default enum to catch invalid element order. | +| Linear | 1 | Enum for first order linear elements. | +| Quadratic | 2 | Enum for second order quadratic elements. | +| SolidShell | 3 | Enum for solid shell elements. | + + + + + +### ModelSource + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid source. | +| GENERATED | 1 | Generated analysis model source. | +| STRAIN_MAP | 2 | Strain map analysis model source. | + + + + + +### RunAnalysisRequest.Analysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid analysis. | +| NaturalFreq | 1 | Enum for the Natural Frequency analysis. | +| HarmonicVibe | 2 | Enum for the Harmonic Vibe analysis. | +| ICTAnalysis | 3 | Enum for the ICT analysis. | +| MechanicalShock | 4 | Enum for the Mechanical Shock analysis. | +| RandomVibe | 5 | Enum for the Random Vibe analysis. | +| ComponentFailureMode | 7 | Enum for the Component Failure Mechanism analysis. | +| DFMEAModule | 8 | Enum for the DFMEA analysis. | +| PTHFatigue | 9 | Enum for the PTH Fatigue analysis. | +| PartValidation | 10 | Enum for the Part Validation analysis. | +| SemiconductorWearout | 11 | Enum for the Semiconductor Wearout analysis. | +| SolderJointFatigue | 12 | Enum for the Solder Fatigue analysis. | +| ThermalDerating | 13 | Enum for the Thermal Derating analysis. | +| ThermalMech | 14 | Enum for the Thermal Mech analysis. | + + + + + +### RunStrainMapAnalysisRequest.StrainMapAnalysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Default enum to catch invalid analysis. | +| RandomVibe | 1 | Enum for the Random Vibe analysis. | +| MechanicalShock | 2 | Enum for Mechanical Shock analysis. | + + + + + +### UpdatePcbModelingPropsRequest.Analysis.AnalysisType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownAnalysisType | 0 | Default enum to catch invalid analysis. | +| HarmonicVibe | 1 | Enum for the Harmonic Vibe analysis. | +| ICTAnalysis | 2 | Enum for the ICT analysis. | +| MechanicalShock | 3 | Enum for the Mechanical Shock analysis. | +| NaturalFreq | 4 | Enum for the Natural Frequency analysis. | +| RandomVibe | 5 | Enum for the Random Vibe analysis. | +| ThermalMech | 6 | Enum for the Thermal Mech analysis. | + + + + + +### UpdatePcbModelingPropsRequest.Analysis.PcbMaterialModel + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownPcbModel | 0 | Default enum to catch invalid PCB model. | +| Uniform | 1 | Enum for uniform PCB model. | +| Layered | 2 | Enum for layered PCB model. | +| UniformElements | 3 | Enum for uniform elements PCB model. | +| LayeredElements | 4 | Enum for layered elements PCB model. | + + + + + +### UpdatePcbModelingPropsRequest.Analysis.PcbModelType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UnknownMeshType | 0 | Default enum to catch invalid mesh type. | +| Bonded | 1 | Bonded FEA model. | + + + + + + + + + +### SherlockAnalysisService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| runAnalysis | [.RunAnalysisRequest](#RunAnalysisRequest) | [.ReturnCode](#ReturnCode) | Runs one or more Sherlock analysis. | +| runStrainMapAnalysis | [.RunStrainMapAnalysisRequest](#RunStrainMapAnalysisRequest) | [.ReturnCode](#ReturnCode) | Run Sherlock strain map analysis. | +| getHarmonicVibeInputFields | [.GetHarmonicVibeInputFieldsRequest](#GetHarmonicVibeInputFieldsRequest) | [.GetHarmonicVibeInputFieldsResponse](#GetHarmonicVibeInputFieldsResponse) | Returns the list of valid harmonic vibe input fields for the provided model source and user configuration. | +| updateHarmonicVibeProps | [.UpdateHarmonicVibePropsRequest](#UpdateHarmonicVibePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for harmonic vibe analysis. | +| getRandomVibeInputFields | [.GetRandomVibeInputFieldsRequest](#GetRandomVibeInputFieldsRequest) | [.GetRandomVibeInputFieldsResponse](#GetRandomVibeInputFieldsResponse) | Returns the list of valid Random Vibe input fields for the provided model source and user configuration. | +| updateRandomVibeProps | [.UpdateRandomVibePropsRequest](#UpdateRandomVibePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for random vibe analysis. | +| getMechanicalShockInputFields | [.GetMechanicalShockInputFieldsRequest](#GetMechanicalShockInputFieldsRequest) | [.GetMechanicalShockInputFieldsResponse](#GetMechanicalShockInputFieldsResponse) | Returns the list of valid mechanical shock input fields for the provided model source and user configuration. | +| updateMechanicalShockProps | [.UpdateMechanicalShockPropsRequest](#UpdateMechanicalShockPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for mechanical shock analysis. | +| updateSolderFatigueProps | [.UpdateSolderFatiguePropsRequest](#UpdateSolderFatiguePropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for solder fatigue analysis. | +| getNaturalFrequencyInputFields | [.GetNaturalFrequencyInputFieldsRequest](#GetNaturalFrequencyInputFieldsRequest) | [.GetNaturalFrequencyInputFieldsResponse](#GetNaturalFrequencyInputFieldsResponse) | Returns the list of valid natural frequency property fields given the user configuration. | +| updateNaturalFrequencyProps | [.UpdateNaturalFrequencyPropsRequest](#UpdateNaturalFrequencyPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for natural frequency analysis. | +| updateThermalMechProps | [.UpdateThermalMechPropsRequest](#UpdateThermalMechPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for thermal mech analysis. | +| getPcbModelingInputFields | [.GetPcbModelingInputFieldsRequest](#GetPcbModelingInputFieldsRequest) | [.GetPcbModelingInputFieldsResponse](#GetPcbModelingInputFieldsResponse) | Returns the list of valid PCB modeling property field. | +| updatePcbModelingProps | [.UpdatePcbModelingPropsRequest](#UpdatePcbModelingPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the PCB modeling properties for the provided analysis types. | +| getSolderFatigueInputFields | [.GetSolderFatigueInputFieldsRequest](#GetSolderFatigueInputFieldsRequest) | [.GetSolderFatigueInputFieldsResponse](#GetSolderFatigueInputFieldsResponse) | Returns the list of valid solder fatigue property fields given the user configuration. | +| updatePartModelingProperties | [.UpdatePartModelingRequest](#UpdatePartModelingRequest) | [.ReturnCode](#ReturnCode) | Updates the part modeling properties for a given project's CCA. | +| getICTAnalysisInputFields | [.GetICTAnalysisInputFieldsRequest](#GetICTAnalysisInputFieldsRequest) | [.GetICTAnalysisInputFieldsResponse](#GetICTAnalysisInputFieldsResponse) | Returns the list of valid ICT analysis property fields given the user configuration. | +| updateICTAnalysisProps | [.UpdateICTAnalysisPropsRequest](#UpdateICTAnalysisPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for ICT analysis. | +| updatePartsListValidationProps | [.UpdatePartsListValidationPropsRequest](#UpdatePartsListValidationPropsRequest) | [.ReturnCode](#ReturnCode) | Updates the analysis properties for part list validation analysis. | + + + + + + + + +## SherlockCommonService.proto +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### ExitRequest +Request to exit the gRPC connection. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| closeSherlockClient | [bool](#bool) | | If set to true, exits the Sherlock client if it is opened. Otherwise, just closes the gRPC connection. | + + + + + + + + +### GetSoldersRequest +Request for a list of valid solder materials. + + + + + + + + +### GetSoldersResponse +Represents a list of valid solder materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| solderName | [string](#string) | repeated | List of valid solder materials. | + + + + + + + + +### HealthCheckRequest +Request to check if the gRPC connection is open. + + + + + + + + +### HealthCheckResponse +Represents whether the gRPC connection is open. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| status | [HealthCheckResponse.ServingStatus](#HealthCheckResponse-ServingStatus) | | Enum representing connection status. | +| port | [int32](#int32) | | Listening port number on server. | + + + + + + + + +### IsSherlockClientLoadingRequest +Check if the Sherlock client is still loading. + + + + + + + + +### ListUnitsRequest +Request for a list of valid units of the provided unit type. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| unitType | [ListUnitsRequest.UnitType](#ListUnitsRequest-UnitType) | | Unit type to request valid units of. | + + + + + + + + +### ListUnitsResponse +Represents a list of valid units for the provided unit type. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | List of valid units for the requested type. | + + + + + + + + +### Measurement +Represents a common measurement with a value and a unit + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Numerical value of a measurement. | +| units | [string](#string) | | Units of the numerical value. | + + + + + + + + +### ReturnCode +Status response of a message. A value of 0 indicates a successful request. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [int32](#int32) | | Status code of response. A value of 0 indicates success, -1 indicates error. | +| message | [string](#string) | | Message indicating the status of response including any error. | + + + + + + + + +### SherlockInfoRequest +Request to receive Sherlock version and configuration data. + + + + + + + + +### SherlockInfoResponse +Represents Sherlock version and configuration data. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| releaseVersion | [string](#string) | | The current version of Sherlock, formatted as: YYYY R# (Ex. "2025 R1") | +| defaultProjectDir | [string](#string) | | The project directory currently used by Sherlock. | +| isSingleProjectMode | [bool](#bool) | | When true, indicates that Sherlock is in single-project mode. When false, indicates that Sherlock is in multi-project mode. | + + + + + + + + + + +### HealthCheckResponse.ServingStatus + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Indicates an unknown connection status. | +| SERVING | 1 | Indicates the connection is up and server is listening. | +| NOT_SERVING | 2 | Indicates connection with server is closed. | + + + + + +### ListUnitsRequest.UnitType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| UNKNOWN | 0 | Indicates an unknown unit type. | +| ACCEL_DENSITY | 1 | Units used for acceleration density. | +| ACCELERATION | 2 | Units used for acceleration. | +| AREA | 3 | Units used for area. | +| BANDWIDTH | 4 | Units used for bandwidth. | +| CAPACITANCE | 5 | Units used for electrical capacitance. | +| CTE | 6 | Units used for material CTE. | +| CURRENT | 7 | Units used for electrical current. | +| DENSITY | 8 | Units used for density. | +| DISP_DENSITY | 9 | Units used for displacement density. | +| FORCE | 10 | Units used for force. | +| FREQUENCY | 11 | Units used for frequency. | +| INDUCTANCE | 12 | Units used for inductance. | +| LENGTH | 13 | Units used for length. | +| POWER | 14 | Units used for electrical power. | +| RESISTANCE | 15 | Units used for electrical resistance. | +| SIZE | 16 | Units used for size. | +| SPECIFIC_HEAT | 17 | Units used for specific heat. | +| STRAIN | 18 | Units used for strain. | +| STRESS | 19 | Units used for stress. | +| TEMPERATURE | 20 | Units used for temperature. | +| THERMAL_CONDUCTIVITY | 21 | Units used for thermal conductivity. | +| THERMAL_RESISTANCE | 22 | Units used for thermal resistance. | +| TIME | 23 | Units used for time. | +| VELOCITY | 24 | Units used for velocity. | +| VELOCITY_DENSITY | 25 | Units used for velocity density. | +| VOLTAGE | 26 | Units used for electrical voltage. | +| VOLUME | 27 | Units used for volume. | +| WEIGHT | 28 | Units used for weight. | + + + + + +### MatchingMode +Determines how parts in the parts list are matched against parts +in the AVL or Part Library. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Both | 0 | Matches both part number and manufacturer. | +| Part | 1 | Matches part number only. | + + + + + +### TableDelimiter +Types of delimiters that can be used for exporting tables + +| Name | Number | Description | +| ---- | ------ | ----------- | +| COMMA | 0 | Represents ',' delimiter. | +| SPACE | 1 | Represents ' ' delimiter. | +| TAB | 2 | Represents tab key delimiter. | +| SEMICOLON | 3 | Represents ';' delimiter. | + + + + + + + + + +### SherlockCommonService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| check | [.HealthCheckRequest](#HealthCheckRequest) | [.HealthCheckResponse](#HealthCheckResponse) | Returns health status of gRPC server. | +| exit | [.ExitRequest](#ExitRequest) | [.ReturnCode](#ReturnCode) | Signals for gRPC connection to shutdown. | +| isSherlockClientLoading | [.IsSherlockClientLoadingRequest](#IsSherlockClientLoadingRequest) | [.ReturnCode](#ReturnCode) | Check if the Sherlock client is still loading. | +| listUnits | [.ListUnitsRequest](#ListUnitsRequest) | [.ListUnitsResponse](#ListUnitsResponse) | Returns a list of valid units of the provided unit type. | +| getSolders | [.GetSoldersRequest](#GetSoldersRequest) | [.GetSoldersResponse](#GetSoldersResponse) | Returns a list of valid solder materials. | +| getSherlockInfo | [.SherlockInfoRequest](#SherlockInfoRequest) | [.SherlockInfoResponse](#SherlockInfoResponse) | Returns meta data about Sherlock. | + + + + + + + + +## SherlockLayerService.proto +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### AddModelingRegionRequest +Request to add one or more modeling regions to a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project to add the modeling regions to. | +| modelingRegions | [ModelingRegion](#ModelingRegion) | repeated | List of modeling regions to add to the project. | + + + + + + + + +### AddPottingRegionRequest +Request to add a potting region. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project to add the potting regions to. | +| pottingRegions | [AddPottingRegionRequest.PottingRegion](#AddPottingRegionRequest-PottingRegion) | repeated | The potting regions to add. | + + + + + + + + +### AddPottingRegionRequest.PottingRegion + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The name of the CCA. | +| pottingID | [string](#string) | optional | The potting ID, must be unique. | +| pottingSide | [string](#string) | optional | The potting side, options are "TOP", "BOT", or "BOTTOM". | +| pottingMaterial | [string](#string) | optional | The potting material. | +| pottingUnits | [string](#string) | optional | The units to use for the potting region. | +| pottingThickness | [double](#double) | optional | The potting thickness. | +| pottingStandoff | [double](#double) | optional | The potting standoff. | +| polygonalShape | [PolygonalShape](#PolygonalShape) | | Used to add a region with a polygonal shape. | +| rectangularShape | [RectangularShape](#RectangularShape) | | Used to add a region with a rectangular shape. | +| slotShape | [SlotShape](#SlotShape) | | Used to add a region with a slot shape. | +| circularShape | [CircularShape](#CircularShape) | | Used to add a region with a circular shape. | +| pCBShape | [PCBShape](#PCBShape) | | Used to add a region with a PCB shape. | + + + + + + + + +### CircularShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| diameter | [double](#double) | optional | The diameter of the circle. | +| nodeCount | [uint32](#uint32) | optional | The number of nodes. | +| centerX | [double](#double) | optional | The x coordinate of the center of the circle. | +| centerY | [double](#double) | optional | The x coordinate of the center of the circle. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +### CopyModelingRegionRequest +Request to copy one or more modeling regions in a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| copyRegions | [CopyModelingRegionRequest.CopyModelingRegionInfo](#CopyModelingRegionRequest-CopyModelingRegionInfo) | repeated | List of modeling regions to copy along with their corresponding "copy to" parameters. | + + + + + + + + +### CopyModelingRegionRequest.CopyModelingRegionInfo + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| regionId | [string](#string) | | Region ID of the existing modeling region to copy. | +| regionIdCopy | [string](#string) | | Region ID of the modeling region copy. Must be unique. | +| centerX | [double](#double) | | The center x coordinate of the modeling region copy -- used for location placement in the Layer Viewer. | +| centerY | [double](#double) | | The center y coordinate of the modeling region copy -- used for location placement in the Layer Viewer. | + + + + + + + + +### DeleteAllICTFixturesRequest +Request to delete all ICT fixtures in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### DeleteAllMountPointsRequest +Request to delete all mount points in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### DeleteAllTestPointsRequest +Request to delete all ICT fixtures in specific CCA of specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### DeleteModelingRegionRequest +Request to delete one or more modeling regions for a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| deleteRegions | [DeleteModelingRegionRequest.DeleteModelingRegionInfo](#DeleteModelingRegionRequest-DeleteModelingRegionInfo) | repeated | List of modeling regions to delete in the project. | + + + + + + + + +### DeleteModelingRegionRequest.DeleteModelingRegionInfo + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| regionId | [string](#string) | | Unique region ID of the modeling region to delete. | + + + + + + + + +### ExportAllICTFixturesRequest +Request to export all ICT fixtures and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| units | [string](#string) | | Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +### ExportAllMountPointsRequest +Request to export all mount points and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| units | [string](#string) | | Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +### ExportAllTestPointsRequest +Request to export all test points and their properties into a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| lengthUnits | [string](#string) | | Length Units used in exporting. | +| displacementUnits | [string](#string) | | Displacement Units used in exporting. | +| forceUnits | [string](#string) | | Force Units used in exporting. | +| filePath | [string](#string) | | The filepath of the CSV file to be exported. | + + + + + + + + +### GetMountPointBoundariesRequest +Request to list the valid mount point boundaries. + + + + + + + + +### GetMountPointBoundariesResponse +Represents a list of valid mount point boundaries. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boundary | [string](#string) | repeated | Mount Point boundary. | + + + + + + + + +### GetMountPointChassisMaterialsRequest +Request to list the valid mount point chassis materials. + + + + + + + + +### GetMountPointChassisMaterialsResponse +Represents a list of valid mount point chassis materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| chassisMaterial | [string](#string) | repeated | Mount Point chassis material. | + + + + + + + + +### GetMountPointShapeTypesRequest +Request to list the valid mount point shape types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| mountPointType | [string](#string) | | Mount Point Type. Supported values are: Mount Hole, Mount Pad, Standoff, and Support Pin. | + + + + + + + + +### GetMountPointShapeTypesResponse +Represents a list of valid mount point shape types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| type | [string](#string) | repeated | Mount Point Shape Type. | + + + + + + + + +### GetMountPointSidesRequest +Request to list the valid mount point sides. + + + + + + + + +### GetMountPointSidesResponse +Represents a list of valid mount point sides. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| side | [string](#string) | repeated | Mount Point side. | + + + + + + + + +### GetMountPointTypesRequest +Request to list the valid mount point types. + + + + + + + + +### GetMountPointTypesResponse +Represents a list of valid mount point types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| type | [string](#string) | repeated | Mount Point Type. | + + + + + + + + +### GetMountPointUnitsRequest +Request to list the valid mount point units. + + + + + + + + +### GetMountPointUnitsResponse +Represents a list of valid mount point units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | Mount Point units. | + + + + + + + + +### GetMountPointsPropertiesRequest +Request to list the valid mount point chassis materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| mountPointIDs | [string](#string) | | A comma separated list of mount point id for a list of mount point, or a mount id for one part. | + + + + + + + + +### GetMountPointsPropertiesResponse +Represents a list of valid mount point properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| mountPointsProperties | [MountPointProperties](#MountPointProperties) | repeated | Mount point properties. | + + + + + + + + +### ModelingRegion + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | optional | Name of the CCA. | +| regionId | [string](#string) | optional | Unique modeling region ID. | +| regionUnits | [string](#string) | optional | Modeling region units. | +| modelMode | [ModelingRegion.ModelingMode](#ModelingRegion-ModelingMode) | optional | Mode that specified how the region is used. | +| polygonalShape | [PolygonalShape](#PolygonalShape) | | Defined by N points that form a convex polygon. | +| rectangularShape | [RectangularShape](#RectangularShape) | | Defined by 4 points that form a rectangle. | +| slotShape | [SlotShape](#SlotShape) | | Defined by 8 points that form a rectangle with rounded ends. | +| circularShape | [CircularShape](#CircularShape) | | Defined by N points that form a circle. | +| pcbModelProps | [ModelingRegion.PCBModelingProperties](#ModelingRegion-PCBModelingProperties) | optional | Mesh properties for the modeling region. | +| traceModelProps | [ModelingRegion.TraceModelingProperties](#ModelingRegion-TraceModelingProperties) | optional | Trace modeling properties for the region. | +| regionIdReplacement | [string](#string) | optional | Represents a unique region id that will replace the existing regionId value during | + + + + + + + + +### ModelingRegion.PCBModelingProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportModelType | [ModelingRegion.PCBModelingProperties.ExportModelType](#ModelingRegion-PCBModelingProperties-ExportModelType) | | The type of model to be generated for a given modeling region. | +| elemOrder | [ModelingRegion.ElementOrder](#ModelingRegion-ElementOrder) | | The type of 3D elements to be created for the PCB in the modeling region. | +| maxMeshSize | [double](#double) | | The maximum size of the mesh to be used in the region. | +| maxMeshSizeUnits | [string](#string) | | Units for the maximum mesh size. | +| quadsPreferred | [bool](#bool) | | If true, then the meshing engine should attempt to generate quad-shaped elements when creating the mesh. | + + + + + + + + +### ModelingRegion.TraceModelingProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceModelType | [ModelingRegion.TraceModelingProperties.TraceModelingType](#ModelingRegion-TraceModelingProperties-TraceModelingType) | | Specifies if trace modeling should be performed inside of the region. | +| elemOrder | [ModelingRegion.ElementOrder](#ModelingRegion-ElementOrder) | optional | The type of 3D elements to be created for traces in the region when trace modeling is enabled. | +| traceMeshSize | [double](#double) | optional | The maximum mesh size to be used in the region when trace modeling is enabled. | +| traceMeshSizeUnits | [string](#string) | optional | Units for the maximum mesh size when trace modeling is enabled. | + + + + + + + + +### MountPointProperties +Properties of mount point, the properties may varies from the mount point type and mount point shape. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ID | [string](#string) | | Mount point ID. | +| type | [string](#string) | | Mount point type. | +| shape | [string](#string) | | Shape type. | +| units | [string](#string) | | Mount point units. | +| x | [string](#string) | | Center X. | +| y | [string](#string) | | Center Y. | +| length | [string](#string) | | Length. | +| width | [string](#string) | | Width. | +| diameter | [string](#string) | | Diameter. | +| nodes | [string](#string) | | # of nodes. | +| rotation | [string](#string) | | Rotation in degrees. | +| side | [string](#string) | | Mount point side. | +| height | [string](#string) | | Mount point height. | +| material | [string](#string) | | Mount point material. | +| boundary | [string](#string) | | Boundary Pt(s). | +| constraints | [string](#string) | | FEA constraints. | +| polygon | [string](#string) | | Coordinates of points. | +| state | [string](#string) | | Mount point state. | +| chassisMaterial | [string](#string) | | Chassis material. | + + + + + + + + +### PCBShape + + + + + + + + + +### PolygonalShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| points | [PolygonalShape.Point](#PolygonalShape-Point) | repeated | The points used to define the polygonal shape, must be >= 3. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +### PolygonalShape.Point + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| x | [double](#double) | | The x coordinate of the point. | +| y | [double](#double) | | The y coordinate of the point. | + + + + + + + + +### RectangularShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| length | [double](#double) | optional | The length of the rectangle. | +| width | [double](#double) | optional | The width of the rectangle. | +| centerX | [double](#double) | optional | The x coordinate of the center of the rectangle. | +| centerY | [double](#double) | optional | The y coordinate of the center of the rectangle. | +| rotation | [double](#double) | optional | The rotation of the rectangle in degrees. | + + + + + + + + +### SlotShape + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| length | [double](#double) | optional | The length of the slot shape. | +| width | [double](#double) | optional | The width of the slot shape. | +| nodeCount | [uint32](#uint32) | optional | The number of nodes. | +| centerX | [double](#double) | optional | The x coordinate of the center of the slot shape. | +| centerY | [double](#double) | optional | The x coordinate of the center of the slot shape. | +| rotation | [double](#double) | optional | The rotation of the shape in degrees. | + + + + + + + + +### UpdateICTFixturesByFileRequest +Request to update ICT fixtures properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the ICT fixtures properties. | + + + + + + + + +### UpdateICTFixturesResponse +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | ICT fixtures update error messages. | + + + + + + + + +### UpdateModelingRegionRequest +Request to update one or more modeling regions for a specific project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | The name of the Sherlock project. | +| modelingRegions | [ModelingRegion](#ModelingRegion) | repeated | List of modeling regions to update in the project. The regionId for | + + + + + + + + +### UpdateMountPointsByFileRequest +Request to update mount points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the mount points properties. | + + + + + + + + +### UpdateMountPointsRequest +Request to update mount points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| mountPointsProperties | [MountPointProperties](#MountPointProperties) | repeated | Mount point properties. | + + + + + + + + +### UpdateMountPointsResponse +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Mount Points update error messages. | + + + + + + + + +### UpdateTestPointsByFileRequest +Request to update test points properties of a CCA from a CSV formatted file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| filePath | [string](#string) | | The filepath of the CSV file containing the test points properties. | + + + + + + + + +### UpdateTestPointsResponse +Contains the status of the update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Test Points update error messages. | + + + + + + + + + + +### ModelingRegion.ElementOrder + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| First_Order | 0 | First order (Linear) 3D elements should be created for the PCB in the modeling region. | +| Second_Order | 1 | Second order (Quadratic) 3D elements should be created for the PCB in the modeling region. | +| Solid_Shell | 2 | Used for relatively flat elements, like those found in a PCB layer to reduce modeling generation time. | + + + + + +### ModelingRegion.ModelingMode + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Enabled | 0 | Use the modeling region. | +| Disabled | 1 | Ignore the modeling region. | +| Excluded | 2 | Don't generate any elements for the region. | + + + + + +### ModelingRegion.PCBModelingProperties.ExportModelType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Default | 0 | Region type is based on the Mesh Type property defined in the PCB Modeling tab in the FEA Model Export dialog. | +| Sherlock | 1 | Use mesh elements generated by Sherlock to model the region. | +| Sweep | 2 | Use mesh elements generated by the FEA tool to model the region. | +| None | 3 | Define only geometric volumes for the region, without generating mesh elements. | + + + + + +### ModelingRegion.TraceModelingProperties.TraceModelingType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Default | 0 | Trace modeling type is based on the Trace Modeling property defined in the Trace Modeling tab in the FEA Model Export dialog. | +| Enabled | 1 | Trace modeling is enabled for this region. | +| Disabled | 2 | Trace modeling is disabled for this region. | + + + + + + + + + +### SherlockLayerService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| addPottingRegion | [.AddPottingRegionRequest](#AddPottingRegionRequest) | [.ReturnCode](#ReturnCode) | Add a potting region with the specified shape and properties. | +| deleteAllICTFixtures | [.DeleteAllICTFixturesRequest](#DeleteAllICTFixturesRequest) | [.ReturnCode](#ReturnCode) | Delete all ICT fixtures in specific CCA of specific project. | +| deleteAllMountPoints | [.DeleteAllMountPointsRequest](#DeleteAllMountPointsRequest) | [.ReturnCode](#ReturnCode) | Delete all mount points in specific CCA of specific project. | +| deleteAllTestPoints | [.DeleteAllTestPointsRequest](#DeleteAllTestPointsRequest) | [.ReturnCode](#ReturnCode) | Delete all test points in specific CCA of specific project. | +| exportAllMountPoints | [.ExportAllMountPointsRequest](#ExportAllMountPointsRequest) | [.ReturnCode](#ReturnCode) | Export all mount points and their properties into a CSV formatted file. | +| exportAllICTFixtures | [.ExportAllICTFixturesRequest](#ExportAllICTFixturesRequest) | [.ReturnCode](#ReturnCode) | Export all ICT fixtures and their properties into a CSV formatted file. | +| exportAllTestPoints | [.ExportAllTestPointsRequest](#ExportAllTestPointsRequest) | [.ReturnCode](#ReturnCode) | Export all test points and their properties into a CSV formatted file. | +| getMountPointBoundaries | [.GetMountPointBoundariesRequest](#GetMountPointBoundariesRequest) | [.GetMountPointBoundariesResponse](#GetMountPointBoundariesResponse) | Get a list of valid mount point boundaries. | +| getMountPointChassisMaterials | [.GetMountPointChassisMaterialsRequest](#GetMountPointChassisMaterialsRequest) | [.GetMountPointChassisMaterialsResponse](#GetMountPointChassisMaterialsResponse) | Get a list of valid mount point chassis materials. | +| getMountPointsProperties | [.GetMountPointsPropertiesRequest](#GetMountPointsPropertiesRequest) | [.GetMountPointsPropertiesResponse](#GetMountPointsPropertiesResponse) | Get a list of valid mount point properties. | +| getMountPointShapeTypes | [.GetMountPointShapeTypesRequest](#GetMountPointShapeTypesRequest) | [.GetMountPointShapeTypesResponse](#GetMountPointShapeTypesResponse) | Get a list of valid mount point shape type values. | +| getMountPointSides | [.GetMountPointSidesRequest](#GetMountPointSidesRequest) | [.GetMountPointSidesResponse](#GetMountPointSidesResponse) | Get a list of valid mount point sides. | +| getMountPointTypes | [.GetMountPointTypesRequest](#GetMountPointTypesRequest) | [.GetMountPointTypesResponse](#GetMountPointTypesResponse) | Get a list of valid mount point type values. | +| getMountPointUnits | [.GetMountPointUnitsRequest](#GetMountPointUnitsRequest) | [.GetMountPointUnitsResponse](#GetMountPointUnitsResponse) | Get a list of valid mount point units. | +| updateICTFixturesByFile | [.UpdateICTFixturesByFileRequest](#UpdateICTFixturesByFileRequest) | [.UpdateICTFixturesResponse](#UpdateICTFixturesResponse) | Update the ICT fixtures properties of a CCA from a CSV formatted file. This API could be used to add new ICT fixtures or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that ICT fixture will be updated. If the ID specified does not already exist, or if the field is empty, then a new ICT fixture will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export ICT Fixtures. | +| updateMountPoints | [.UpdateMountPointsRequest](#UpdateMountPointsRequest) | [.UpdateMountPointsResponse](#UpdateMountPointsResponse) | Update mount points with specified properties. | +| updateMountPointsByFile | [.UpdateMountPointsByFileRequest](#UpdateMountPointsByFileRequest) | [.UpdateMountPointsResponse](#UpdateMountPointsResponse) | Update the mount points properties of a CCA from a CSV formatted file. This API could be used to add new mount points or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that mount point will be updated. If the ID specified does not already exist, or if the field is empty, then a new mount point will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export Mount Points. | +| updateTestPointsByFile | [.UpdateTestPointsByFileRequest](#UpdateTestPointsByFileRequest) | [.UpdateTestPointsResponse](#UpdateTestPointsResponse) | Update the test points properties of a CCA from a CSV formatted file. This API could be used to add new test points or update existing ones depending on the file contents. If the ID specified already exists, then the properties for that test point will be updated. If the ID specified does not already exist, or if the field is empty, then a new test point will be added with the specified properties. The file format should be the same as the one produced from CCA -> Export Test Points. | +| addModelingRegion | [.AddModelingRegionRequest](#AddModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Add one or more modeling regions with the specified shapes and properties. | +| updateModelingRegion | [.UpdateModelingRegionRequest](#UpdateModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Update one or more modeling regions with the specified shapes and properties. | +| deleteModelingRegion | [.DeleteModelingRegionRequest](#DeleteModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Delete one or more existing modeling regions. | +| copyModelingRegion | [.CopyModelingRegionRequest](#CopyModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Copy one or more existing modeling regions. | + + + + + + + + +## SherlockLifeCycleService.proto +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### AddHarmonicEventRequest +Request to define and add a new harmonic vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the harmonic event. | +| description | [string](#string) | | Description of the harmonic event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this harmonic event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| sweepRate | [double](#double) | | Sweep rate for the harmonic event | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: "30,15". | +| profileType | [string](#string) | | Harmonic load profile types. Example valid values are "Uniaxial" and "Triaxial". | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: "0,0,1". | + + + + + + + + +### AddHarmonicEventResponse +Response from adding a harmonic vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddHarmonicVibeProfilesRequest +Request to define and add new harmonic vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| harmonicVibeProfiles | [AddHarmonicVibeProfilesRequest.HarmonicVibeProfile](#AddHarmonicVibeProfilesRequest-HarmonicVibeProfile) | repeated | List of harmonic vibe life cycle event profiles for a specified project. | + + + + + + + + +### AddHarmonicVibeProfilesRequest.HarmonicVibeProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the harmonic event. | +| profileName | [string](#string) | | Name of the harmonic profile. | +| freqUnits | [string](#string) | | Frequency units. | +| loadUnits | [string](#string) | | Load units. | +| harmonicVibeProfileEntries | [AddHarmonicVibeProfilesRequest.HarmonicVibeProfile.Entry](#AddHarmonicVibeProfilesRequest-HarmonicVibeProfile-Entry) | repeated | List of frequency and load values for a harmonic vibe life cycle phase. | +| triaxialAxis | [string](#string) | | If the harmonic profile type is "Triaxial", the axis this profile should be assigned to. Valid values are: x, y, z. | + + + + + + + + +### AddHarmonicVibeProfilesRequest.HarmonicVibeProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| freq | [double](#double) | | Frequency. | +| load | [double](#double) | | Load. | + + + + + + + + +### AddHarmonicVibeProfilesResponse +Response from adding harmonic vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddRandomVibeEventRequest +Request to define and add a new random vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the random vibe event. | +| description | [string](#string) | | Description of the random vibe event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this random vibe event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: "30,15". | +| profileType | [string](#string) | | Random load profile type. Example valid value is "Uniaxial". | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: "0,0,1". | + + + + + + + + +### AddRandomVibeEventResponse +Response from adding a random vibe life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddRandomVibeProfilesRequest +Request to define and add new random vibe life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| randomVibeProfiles | [AddRandomVibeProfilesRequest.RandomVibeProfile](#AddRandomVibeProfilesRequest-RandomVibeProfile) | repeated | List of random vibe life cycle event profiles for a specified project. | + + + + + + + + +### AddRandomVibeProfilesRequest.RandomVibeProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the random vibe event. | +| profileName | [string](#string) | | Name of the random vibe profile. | +| freqUnits | [string](#string) | | Frequency units. | +| amplUnits | [string](#string) | | Amplitude units. | +| randomVibeProfileEntries | [AddRandomVibeProfilesRequest.RandomVibeProfile.Entry](#AddRandomVibeProfilesRequest-RandomVibeProfile-Entry) | repeated | List of frequency and amplitude values for a random vibe life cycle event. | + + + + + + + + +### AddRandomVibeProfilesRequest.RandomVibeProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| freq | [double](#double) | | Frequency. | +| ampl | [double](#double) | | Amplitude. | + + + + + + + + +### AddRandomVibeProfilesResponse +Response from adding random vibe profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddShockEventRequest +Request to define and add a new shock life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the shock event. | +| description | [string](#string) | | Description of the shock event. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for this shock event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| orientation | [string](#string) | | PCB orientation in the format of azimuth, elevation. Example: 30,15 | +| loadDirection | [string](#string) | | Load direction in the format of x,y,z. Example: 0,0,1 | + + + + + + + + +### AddShockEventResponse +Response from adding a shock life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddShockProfilesRequest +Request to define and add new shock life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| shockProfiles | [AddShockProfilesRequest.ShockProfile](#AddShockProfilesRequest-ShockProfile) | repeated | List of shock life cycle event profiles for a specified project. | + + + + + + + + +### AddShockProfilesRequest.ShockProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the shock event. | +| profileName | [string](#string) | | Name of the shock profile. | +| duration | [double](#double) | | Pulse duration. | +| durationUnits | [string](#string) | | Pulse duration unit. | +| sampleRate | [double](#double) | | Sample rate. | +| sampleRateUnits | [string](#string) | | Sample rate unit. | +| loadUnits | [string](#string) | | Load unit. | +| freqUnits | [string](#string) | | Frequency unit. | +| shockProfileEntries | [AddShockProfilesRequest.ShockProfile.Entry](#AddShockProfilesRequest-ShockProfile-Entry) | repeated | Primary shape entry for the shock profile. | + + + + + + + + +### AddShockProfilesRequest.ShockProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| shape | [string](#string) | | Shape of the shock profile. | +| load | [double](#double) | | Load. | +| freq | [double](#double) | | Frequency rate. | +| decay | [double](#double) | | Decay rate. | + + + + + + + + +### AddShockProfilesResponse +Response from adding shock life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddThermalEventRequest +Request to define and add a new thermal life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase to add this event to. | +| eventName | [string](#string) | | Name of the thermal event. | +| description | [string](#string) | | Description of the thermal event. | +| numOfCycles | [double](#double) | | Number of cycles defined for this thermal event. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | +| cycleState | [string](#string) | | The life cycle state. For example: "OPERATING", "STORAGE". | + + + + + + + + +### AddThermalEventResponse +Response from adding a thermal life cycle event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddThermalProfilesRequest +Request to define and add a new thermal life cycle event profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalProfiles | [AddThermalProfilesRequest.ThermalProfile](#AddThermalProfilesRequest-ThermalProfile) | repeated | List of thermal life cycle event profiles for a specified project. | + + + + + + + + +### AddThermalProfilesRequest.ThermalProfile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Name of the thermal event. | +| profileName | [string](#string) | | Name of the thermal profile. | +| timeUnits | [string](#string) | | Time units. | +| tempUnits | [string](#string) | | Temperature units. | +| thermalProfileEntries | [AddThermalProfilesRequest.ThermalProfile.Entry](#AddThermalProfilesRequest-ThermalProfile-Entry) | repeated | List of step entries for a life cycle event and/or phase. | + + + + + + + + +### AddThermalProfilesRequest.ThermalProfile.Entry + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| step | [string](#string) | | Name of the step. | +| type | [string](#string) | | Profile step type. "HOLD" or "RAMP". | +| time | [double](#double) | | Time duration of the step. | +| temp | [double](#double) | | Temperature of the step. | + + + + + + + + +### AddThermalProfilesResponse +Response from adding thermal profiles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### CreateLifePhaseRequest +Request for creating a life phase. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of new life phase. | +| description | [string](#string) | | Description of new life phase. | +| duration | [double](#double) | | Event duration length. | +| durationUnits | [string](#string) | | Event duration length units. | +| numOfCycles | [double](#double) | | Number of cycles defined for new life phase. | +| cycleType | [string](#string) | | The cycle type. For example: "COUNT", "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | + + + + + + + + +### CreateLifePhaseResponse +Response from creating a life phase. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of error messages. | + + + + + + + + +### DeleteEventRequest +Request to delete a life cycle event in a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase from which to delete this event. | +| eventName | [string](#string) | | Name of the event to be deleted. | + + + + + + + + +### DeleteLifePhaseResponse +Response for deleting a life phase + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### DeletePhaseRequest +Request for deleting a life phase + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | Sherlock life phase name. | + + + + + + + + +### Events +Represents an event. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Event name. | + + + + + + + + +### ListAmplUnitsRequest +Request for a list of amplitude units. + + + + + + + + +### ListAmplUnitsResponse +Represents a list of amplitude units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| amplUnits | [string](#string) | repeated | List of amplitude units. | + + + + + + + + +### ListDurationUnitsRequest +Request for a list of duration units for event settings. + + + + + + + + +### ListDurationUnitsResponse +Represents a list of duration units for event settings in life cycle. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| durationUnits | [string](#string) | repeated | List of duration units. | + + + + + + + + +### ListFreqUnitsRequest +Request for a list of frequency units. + + + + + + + + +### ListFreqUnitsResponse +Represents a list of frequency units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| freqUnits | [string](#string) | repeated | List of frequency units. For example: "HZ", "KHZ", "MHZ", "GHZ". | + + + + + + + + +### ListHarmonicEventsRequest +Request for a list of harmonic events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListHarmonicEventsResponse +Represents a list of harmonic events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of harmonic events. | + + + + + + + + +### ListHarmonicProfileTypesRequest +Request for a list of harmonic load profile types. + + + + + + + + +### ListHarmonicProfileTypesResponse +Represents a list of harmonic load profile types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of harmonic load profile types. "Uniaxial", "Triaxial". | + + + + + + + + +### ListLCEventsRequest +Request for a list of life cycle phases and events for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListLCEventsResponse +Represents the life cycle phases and events for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| lcPhases | [ListLCEventsResponse.LifeCyclePhase](#ListLCEventsResponse-LifeCyclePhase) | repeated | List of LifeCyclePhases for a specified project. | + + + + + + + + +### ListLCEventsResponse.LifeCyclePhase + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle phase name. | +| description | [string](#string) | | Life cycle phase description. | +| lcEvents | [ListLCEventsResponse.LifeCyclePhase.LifeCycleEvent](#ListLCEventsResponse-LifeCyclePhase-LifeCycleEvent) | repeated | List of LifeCycleEvents for a project phase. | + + + + + + + + +### ListLCEventsResponse.LifeCyclePhase.LifeCycleEvent + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Life cycle event name. | +| description | [string](#string) | | Life cycle event description. | +| type | [string](#string) | | Life cycle type. For example: "Thermal Event", "Shock Event", "Random Vibe", "Harmonic Vibe". | + + + + + + + + +### ListLCStatesRequest +Request for a list of life cycle states. + + + + + + + + +### ListLCStatesResponse +Represents a list of life cycle states. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| states | [string](#string) | repeated | List of life cycle states. For example: "Operating", "Storage". | + + + + + + + + +### ListLCTypesRequest +Request for a list of life cycle types. + + + + + + + + +### ListLCTypesResponse +Represents a list of life cycle types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of life cycle types. For example, "DUTY CYCLE", "PER YEAR", "PER HOUR", etc. | + + + + + + + + +### ListRandomVibeEventsRequest +Request for a list of random vibe events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListRandomVibeEventsResponse +Represents a list of random vibe events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of random vibe events. | + + + + + + + + +### ListRandomVibeProfileTypesRequest +Request for a list of random vibe profile types. + + + + + + + + +### ListRandomVibeProfileTypesResponse +Represents a list of random vibe profile types. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| types | [string](#string) | repeated | List of random vibe profile types. Currently there is only one: "Uniaxial". | + + + + + + + + +### ListShockEventsRequest +Request for a list of shock events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListShockEventsResponse +Represents a list of shock events defined for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| event | [Events](#Events) | repeated | List of shock events. | + + + + + + + + +### ListShockLoadUnitsRequest +Request for a list of shock load units. + + + + + + + + +### ListShockLoadUnitsResponse +Represents a list of shock load units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | List of shock load units. For example: "G", "m/s2", "mm/s2". | + + + + + + + + +### ListShockPulsesRequest +Request for a list of shock Pulses. + + + + + + + + +### ListShockPulsesResponse +Represents a list of shock Pulses. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| shockPulse | [string](#string) | repeated | List of shock pulses. For example: "FullSine", "HalfSine", "Triangle", "Sawtooth", "FullSquare". | + + + + + + + + +### ListTempUnitsRequest +Request for a list of temperature units. + + + + + + + + +### ListTempUnitsResponse +Represents a list of temperature units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| tempUnits | [string](#string) | repeated | List of temperature units. For example: "C", "F", "K". | + + + + + + + + +### LoadHarmonicProfileRequest +Request to load a harmonic life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Harmonic event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| harmonicCsvProps | [LoadHarmonicProfileRequest.CSVProps](#LoadHarmonicProfileRequest-CSVProps) | | Properties for a .csv file load. | +| triaxialAxis | [string](#string) | | If the harmonic profile type is "Triaxial", the axis this profile should be assigned to. Valid values are: x, y, z. | + + + + + + + + +### LoadHarmonicProfileRequest.CSVProps +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the harmonic profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | + + + + + + + + +### LoadHarmonicProfileResponse +Response from loading a harmonic vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadRandomVibeProfileRequest +Request to load a random vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Random vibe event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| randomVibeCsvProps | [LoadRandomVibeProfileRequest.CSVProps](#LoadRandomVibeProfileRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadRandomVibeProfileRequest.CSVProps +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the random vibe profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| amplColumn | [string](#string) | | Amplitude column name. | +| amplUnits | [string](#string) | | Amplitude units. | + + + + + + + + +### LoadRandomVibeProfileResponse +Response from loading a random vibe life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadShockProfileDatasetRequest +Request to load a shock life cycle event profile using the dataset (time and load) from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Shock event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| shockDsCsvProps | [LoadShockProfileDatasetRequest.CSVProps](#LoadShockProfileDatasetRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadShockProfileDatasetRequest.CSVProps +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the shock profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| timeColumn | [string](#string) | | Time column name. | +| timeUnits | [string](#string) | | Time units. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | + + + + + + + + +### LoadShockProfileDatasetResponse +Response from loading a shock profile using the dataset from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadShockProfilePulsesRequest +Request to load a shock life cycle event profile using pulses from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Shock event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| shockPulsesCsvProps | [LoadShockProfilePulsesRequest.CSVProps](#LoadShockProfilePulsesRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadShockProfilePulsesRequest.CSVProps +.csv file properties. This is only required for a .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the shock profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| duration | [double](#double) | | Pulse duration length. | +| durationUnits | [string](#string) | | Pulse duration time units. | +| sampleRate | [double](#double) | | Sample rate. | +| sampleRateUnits | [string](#string) | | Sample rate units. | +| shapeColumn | [string](#string) | | Pulse shape column name. | +| loadColumn | [string](#string) | | Load column name. | +| loadUnits | [string](#string) | | Load units. | +| freqColumn | [string](#string) | | Frequency column name. | +| freqUnits | [string](#string) | | Frequency units. | +| decayColumn | [string](#string) | | Decay column name. | + + + + + + + + +### LoadShockProfilePulsesResponse +Response from loading a shock profile using pulses from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### LoadThermalProfileRequest +Request to load a thermal life cycle event profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| phaseName | [string](#string) | | The name of the life cycle phase this event is associated. | +| eventName | [string](#string) | | Thermal event name. | +| filePath | [string](#string) | | The full path for the .dat or .csv file. | +| csvProps | [LoadThermalProfileRequest.CSVProps](#LoadThermalProfileRequest-CSVProps) | | Properties for a .csv file load. | + + + + + + + + +### LoadThermalProfileRequest.CSVProps +.csv file properties. This is only required for .csv file load. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| profileName | [string](#string) | | Name of the thermal profile. | +| headerRowNumber | [int32](#int32) | | Header row number in the .csv file. | +| columnDelim | [string](#string) | | Delimiter to separate the columns. | +| numericFormat | [string](#string) | | Numeric format. | +| stepColumn | [string](#string) | | Step column name. | +| typeColumn | [string](#string) | | Step type column name. | +| timeColumn | [string](#string) | | Time duration column name. | +| timeUnits | [string](#string) | | Time units column name. | +| tempColumn | [string](#string) | | Temperature column name. | +| tempUnits | [string](#string) | | Temperature units column name. | + + + + + + + + +### LoadThermalProfileResponse +Response from loading a thermal profile from a .dat or .csv file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + + + + + + + +### SherlockLifeCycleService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| addHarmonicEvent | [.AddHarmonicEventRequest](#AddHarmonicEventRequest) | [.AddHarmonicEventResponse](#AddHarmonicEventResponse) | Define and add a new harmonic vibe life cycle event. | +| addHarmonicVibeProfiles | [.AddHarmonicVibeProfilesRequest](#AddHarmonicVibeProfilesRequest) | [.AddHarmonicVibeProfilesResponse](#AddHarmonicVibeProfilesResponse) | Define and add new harmonic vibe life cycle event profiles. | +| addRandomVibeProfiles | [.AddRandomVibeProfilesRequest](#AddRandomVibeProfilesRequest) | [.AddRandomVibeProfilesResponse](#AddRandomVibeProfilesResponse) | Define and add new random vibe life cycle event profiles. | +| addRandomVibeEvent | [.AddRandomVibeEventRequest](#AddRandomVibeEventRequest) | [.AddRandomVibeEventResponse](#AddRandomVibeEventResponse) | Define and add a new random vibe life cycle event. | +| addShockEvent | [.AddShockEventRequest](#AddShockEventRequest) | [.AddShockEventResponse](#AddShockEventResponse) | Define and add a new shock life cycle event. | +| addShockProfiles | [.AddShockProfilesRequest](#AddShockProfilesRequest) | [.AddShockProfilesResponse](#AddShockProfilesResponse) | Define and add new shock life cycle event profiles. Keep in mind, the pulse duration and load values defined in the Shock Profile Editor are relative values used solely within the editor to define the profile shape. A combination of all the primary pulse shapes is then used to define the pulse profile. | +| addThermalEvent | [.AddThermalEventRequest](#AddThermalEventRequest) | [.AddThermalEventResponse](#AddThermalEventResponse) | Define and add a new thermal life cycle event. | +| addThermalProfiles | [.AddThermalProfilesRequest](#AddThermalProfilesRequest) | [.AddThermalProfilesResponse](#AddThermalProfilesResponse) | Define and add new thermal life cycle event profiles. | +| createLifePhase | [.CreateLifePhaseRequest](#CreateLifePhaseRequest) | [.CreateLifePhaseResponse](#CreateLifePhaseResponse) | Define and add a new life phase. | +| deleteEvent | [.DeleteEventRequest](#DeleteEventRequest) | [.ReturnCode](#ReturnCode) | Delete a life cycle event. | +| listAmplUnits | [.ListAmplUnitsRequest](#ListAmplUnitsRequest) | [.ListAmplUnitsResponse](#ListAmplUnitsResponse) | Returns a list of amplitude units when adding a random vibe profile. | +| listDurationUnits | [.ListDurationUnitsRequest](#ListDurationUnitsRequest) | [.ListDurationUnitsResponse](#ListDurationUnitsResponse) | Returns a list of duration units when adding a life cycle event. | +| listFreqUnits | [.ListFreqUnitsRequest](#ListFreqUnitsRequest) | [.ListFreqUnitsResponse](#ListFreqUnitsResponse) | Returns a list of frequency units. | +| listHarmonicEvents | [.ListHarmonicEventsRequest](#ListHarmonicEventsRequest) | [.ListHarmonicEventsResponse](#ListHarmonicEventsResponse) | Returns a list of harmonic events defined for a project. | +| listHarmonicProfileTypes | [.ListHarmonicProfileTypesRequest](#ListHarmonicProfileTypesRequest) | [.ListHarmonicProfileTypesResponse](#ListHarmonicProfileTypesResponse) | Returns a list of harmonic load Profile types. | +| listLifeCycleEvents | [.ListLCEventsRequest](#ListLCEventsRequest) | [.ListLCEventsResponse](#ListLCEventsResponse) | Returns a list of life cycle phases and their events given a Sherlock project directory. | +| listLifeCycleStates | [.ListLCStatesRequest](#ListLCStatesRequest) | [.ListLCStatesResponse](#ListLCStatesResponse) | Returns a list of life cycle states. | +| listLifeCycleTypes | [.ListLCTypesRequest](#ListLCTypesRequest) | [.ListLCTypesResponse](#ListLCTypesResponse) | Returns a list of life cycle types. | +| listRandomVibeProfileTypes | [.ListRandomVibeProfileTypesRequest](#ListRandomVibeProfileTypesRequest) | [.ListRandomVibeProfileTypesResponse](#ListRandomVibeProfileTypesResponse) | Returns a list of random vibe profile types. | +| listRandomVibeEvents | [.ListRandomVibeEventsRequest](#ListRandomVibeEventsRequest) | [.ListRandomVibeEventsResponse](#ListRandomVibeEventsResponse) | Returns a list of random vibe events defined for a project. | +| listShockEvents | [.ListShockEventsRequest](#ListShockEventsRequest) | [.ListShockEventsResponse](#ListShockEventsResponse) | Returns a list of shock events defined for a project. | +| listShockLoadUnits | [.ListShockLoadUnitsRequest](#ListShockLoadUnitsRequest) | [.ListShockLoadUnitsResponse](#ListShockLoadUnitsResponse) | Returns a list of shock load units. | +| listShockPulses | [.ListShockPulsesRequest](#ListShockPulsesRequest) | [.ListShockPulsesResponse](#ListShockPulsesResponse) | Returns a list of shock pulses. | +| listTempUnits | [.ListTempUnitsRequest](#ListTempUnitsRequest) | [.ListTempUnitsResponse](#ListTempUnitsResponse) | Returns a list of temperature units. | +| loadHarmonicProfile | [.LoadHarmonicProfileRequest](#LoadHarmonicProfileRequest) | [.LoadHarmonicProfileResponse](#LoadHarmonicProfileResponse) | Loads a harmonic profile from a .dat or .csv file. | +| loadRandomVibeProfile | [.LoadRandomVibeProfileRequest](#LoadRandomVibeProfileRequest) | [.LoadRandomVibeProfileResponse](#LoadRandomVibeProfileResponse) | Loads a random vibe profile from a .dat or .csv file. | +| loadShockProfileDataset | [.LoadShockProfileDatasetRequest](#LoadShockProfileDatasetRequest) | [.LoadShockProfileDatasetResponse](#LoadShockProfileDatasetResponse) | Loads a shock profile using dataset from a .dat or .csv file. | +| loadShockProfilePulses | [.LoadShockProfilePulsesRequest](#LoadShockProfilePulsesRequest) | [.LoadShockProfilePulsesResponse](#LoadShockProfilePulsesResponse) | Loads a shock profile using pulses from a .dat or .csv file. | +| loadThermalProfile | [.LoadThermalProfileRequest](#LoadThermalProfileRequest) | [.LoadThermalProfileResponse](#LoadThermalProfileResponse) | Loads a thermal profile from a .dat or .csv file. | +| deletePhase | [.DeletePhaseRequest](#DeletePhaseRequest) | [.ReturnCode](#ReturnCode) | Delete a life phase for a project. | + + + + + + + + +## SherlockModelService.proto +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### DrillHoleModeling +Drill hole properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModelingEnabled | [bool](#bool) | | Determines if drill holes will be included in the exported model. | +| minHoleDiameter | [Measurement](#Measurement) | | All drill holes with a diameter less than this will not be included in the exported model. | +| maxEdgeLength | [Measurement](#Measurement) | | Set this to 0 to include all drill holes. + +Specifies the size of the segments used to represent round drill holes by a polygon. | + + + + + + + + +### ExportAEDBRequest +Request to export an Electronics Desktop model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the Electronics Desktop export file. | +| overwrite | [bool](#bool) | | Overwrite existing file if true. | +| displayModel | [bool](#bool) | | Display model after export if true. | + + + + + + + + +### ExportFEAModelRequest +Request to export an FEA model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the export file. | +| analysis | [ExportFEAModelRequest.ExportAnalysis](#ExportFEAModelRequest-ExportAnalysis) | | The ExportAnalysis enum representing the type of analysis that is being exported. | +| drillHoleParam | [ExportFEAModelRequest.DrillHoleParam](#ExportFEAModelRequest-DrillHoleParam) | | Drill Holes modeling parameters - Min Hole Diameter and Max. Edge Length. If any of this parameter is provided, drill hole modeling will be enabled. | +| detectLeadModeling | [string](#string) | | If enabled, automatically enable lead modeling if any part has lead geometry defined, valid values are ENABLED/enabled or DISABLED/disabled. | +| leadModelParam | [ExportFEAModelRequest.LeadModelParam](#ExportFEAModelRequest-LeadModelParam) | | Lead modeling parameter. | +| displayModel | [bool](#bool) | | Display model after export. | +| clearFEADatabase | [bool](#bool) | | Clear FEA Database before defining model. | +| useFEAModelID | [bool](#bool) | | Use FEA Model ID. | +| coordinateUnits | [string](#string) | | Units of exported model coordinates, valid values are "in", "mm", "m", "mil", "micron", "nm". | + + + + + + + + +### ExportFEAModelRequest.DrillHoleParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModeling | [string](#string) | | Enables or disables drill hole modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| minHoleDiameter | [ExportFEAModelRequest.DrillHoleParam.MinHoleDiameter](#ExportFEAModelRequest-DrillHoleParam-MinHoleDiameter) | | Minimum hole diameter info for a drill hole. | +| maxEdgeLength | [ExportFEAModelRequest.DrillHoleParam.MaxEdgeLength](#ExportFEAModelRequest-DrillHoleParam-MaxEdgeLength) | | Maximum edge length info for a drill hole. | + + + + + + + + +### ExportFEAModelRequest.DrillHoleParam.MaxEdgeLength + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Maximum edge length value. | +| unit | [string](#string) | | Maximum edge length unit. | + + + + + + + + +### ExportFEAModelRequest.DrillHoleParam.MinHoleDiameter + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Minimum hole diameter value. | +| unit | [string](#string) | | Minimum hole diameter unit. | + + + + + + + + +### ExportFEAModelRequest.LeadModelParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| leadModeling | [string](#string) | | Enables or disables lead modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| leadElemOrder | [string](#string) | | Element order, valid values are "First Order (Linear)", "Second Order (Quadratic)", or "Solid Shell". | +| maxMeshSize | [ExportFEAModelRequest.LeadModelParam.MaxMeshSize](#ExportFEAModelRequest-LeadModelParam-MaxMeshSize) | | Max mesh size info for a lead model param. | +| verticalMeshSize | [ExportFEAModelRequest.LeadModelParam.VerticalMeshSize](#ExportFEAModelRequest-LeadModelParam-VerticalMeshSize) | | Vertical mesh size info for a lead model param. | +| thicknessCount | [int32](#int32) | | The number of elements through the lead thickness that will be created per lead. | +| aspectRatio | [int32](#int32) | | The aspect ratio is multiplied by the lead thickness divided by the through thickness count to give the lead element height. | + + + + + + + + +### ExportFEAModelRequest.LeadModelParam.MaxMeshSize + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Max mesh size value. | +| unit | [string](#string) | | Max mesh size unit. | + + + + + + + + +### ExportFEAModelRequest.LeadModelParam.VerticalMeshSize + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Vertical mesh size value. | +| unit | [string](#string) | | Vertical mesh size unit. | + + + + + + + + +### ExportTraceModelRequest +Request to export one or many trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceModelExportParams | [TraceModelExportParams](#TraceModelExportParams) | repeated | Parameters for a single trace model export. | + + + + + + + + +### ExportTraceReinforcementModelRequest +Request to export a trace reinforcement model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the trace reinforcement export file. | +| overwrite | [bool](#bool) | | Overwrite existing file if true. | +| displayModel | [bool](#bool) | | Display model after export if true. | +| clearFEADatabase | [bool](#bool) | | Clear FEA Database before defining model if true. | +| generateModelsForAllLayers | [bool](#bool) | | Generate models for all layers. | +| traceParam | [ExportTraceReinforcementModelRequest.TraceParam](#ExportTraceReinforcementModelRequest-TraceParam) | | Trace properties (Diameter Threshold and Minimum Hole Diameter for Shell/Beam). | +| traceDrillHoleParam | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam) | | **Deprecated.** Drill Holes modeling parameters - Min Hole Diameter and Max. Edge Length. If any of this parameter is provided, drill hole modeling will be enabled. | +| drillHoleModeling | [DrillHoleModeling](#DrillHoleModeling) | | Properties used for exporting drill holes. | +| coordinateUnits | [string](#string) | | Units of exported model coordinates, valid values are "in", "mm", "m", "mil", "micron", "nm". | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceDrillHoleParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| drillHoleModeling | [string](#string) | | Enables or disables drill hole modeling, valid values are ENABLED/enabled or DISABLED/disabled. | +| minHoleDiameter | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MinHoleDiameter](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam-MinHoleDiameter) | | Minimum hole diameter info for a trace drill hole param. | +| maxEdgeLength | [ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MaxEdgeLength](#ExportTraceReinforcementModelRequest-TraceDrillHoleParam-MaxEdgeLength) | | Maximum edge length info for a trace drill hole param. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MaxEdgeLength + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Maximum edge length value. | +| unit | [string](#string) | | Maximum edge length unit. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceDrillHoleParam.MinHoleDiameter + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Minimum hole diameter value. | +| unit | [string](#string) | | Minimum hole diameter unit. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceParam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| diameterThreshold | [ExportTraceReinforcementModelRequest.TraceParam.DiameterThreshold](#ExportTraceReinforcementModelRequest-TraceParam-DiameterThreshold) | | Diameter threshold info for a trace parameter. | +| minHoleDiameterForShellOrBeam | [ExportTraceReinforcementModelRequest.TraceParam.MinHoleDiameterForShellOrBeam](#ExportTraceReinforcementModelRequest-TraceParam-MinHoleDiameterForShellOrBeam) | | Minimum hole diameter info for Shell or Beam for a trace parameter. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceParam.DiameterThreshold + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Diameter threshold value. | +| unit | [string](#string) | | Diameter threshold unit. | + + + + + + + + +### ExportTraceReinforcementModelRequest.TraceParam.MinHoleDiameterForShellOrBeam + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| value | [double](#double) | | Min. hole diameter value for Shell/Beam. | +| unit | [string](#string) | | Min. hole diameter unit for Shell/Beam. | + + + + + + + + +### GenerateTraceModelRequest +Request to generate a trace model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. If left empty, trace models will be generated for all CCAs and all of their copper layers. | +| copperLayerName | [string](#string) | | Copper layer from which to generate the trace model. If left empty, trace models will be generated for all copper layers. | +| maxArcSegment | [double](#double) | | Max arc segment. | +| maxArcSegmentUnits | [string](#string) | | Max arc segment units. | +| minTraceArea | [double](#double) | | Min trace area. | +| minTraceAreaUnits | [string](#string) | | Min trace area units. | +| minHoleArea | [double](#double) | | Min hole area. | +| minHoleAreaUnits | [string](#string) | | Min hole area units. | +| useSnapshotForNonImageLayer | [bool](#bool) | | Use an image to generate the trace model for layers that are not image layers. If a snapshot image exists for the layer, that snapshot is used. Otherwise this creates an image that is identical to creating a snapshot. | + + + + + + + + +### TraceModelExportParams +All parameters required to export a trace model. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | Sherlock CCA name. | +| filePath | [string](#string) | | Full file path to the trace export file. | +| copperLayerName | [string](#string) | | Name of the layer in the CCA to export. | +| overwriteExistingFile | [bool](#bool) | | Option that determines if any existing files get overwritten. | +| displayModelAfterExport | [bool](#bool) | | Option to display the model after the export is done. | +| clearFEADatabase | [bool](#bool) | optional | Clears FEA Database. Applicable for .apdl, and .cdb. This will be set to false if it is omitted for applicable file types. | +| useFEAModelID | [bool](#bool) | | Use FEA Model ID. | +| coordUnits | [string](#string) | optional | Units of the coordinate system. Applicable to .py .wbjn, and .stp/.step. This will be set to mm if omitted for applicable file types. | +| pcbMeshPropParam | [TraceModelExportParams.PcbMeshPropParam](#TraceModelExportParams-PcbMeshPropParam) | | Properties used for exporting PCB mesh. | +| tracePropParam | [TraceModelExportParams.TracePropParam](#TraceModelExportParams-TracePropParam) | | Properties used for exporting the traces. | +| drillHoleModeling | [DrillHoleModeling](#DrillHoleModeling) | | Properties used for exporting drill holes. | + + + + + + + + +### TraceModelExportParams.PcbMeshPropParam +Mesh properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| meshType | [MeshType](#MeshType) | | Options of different trace meshing strategies. The options available depend on export file type. | +| isModelingRegionEnabled | [bool](#bool) | | Determines if pre-defined modeling regions will be applied to the exported trace model. | + + + + + + + + +### TraceModelExportParams.TracePropParam +Trace properties used for exporting trace models. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| traceOutputs | [TraceOutputType](#TraceOutputType) | | Options to select which trace regions to include in the 3D model. | +| elementOrder | [ElementOrder](#ElementOrder) | | Type of FEA element to be used when modeling each component (First/linear, Second/quadratic, Solid Shell). | +| maxMeshSize | [Measurement](#Measurement) | | Value passed to FEA meshing tool to indicate the desired element sizes. | +| maxHolesPerTrace | [int32](#int32) | | Maximum number of holes allowed in a trace before partitioning it into multiple traces. | + + + + + + + + + + +### ExportFEAModelRequest.ExportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NaturalFreq | 0 | Natural Frequency Analysis. | +| HarmonicVibe | 1 | Harmonic Vibe Analysis. | +| ICTAnalysis | 2 | ICT Analysis. | +| MechanicalShock | 3 | Mechanical Shock Analysis. | +| RandomVibe | 4 | Random Vibe Analysis. | + + + + + +### MeshType +Different ways meshes are created. The options + available depend on the export file type. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NONE | 0 | Defines only geometric volumes without generating mesh elements. | +| BONDED | 1 | Defines meshed elements generated by Sherlock. | +| SWEEP | 2 | Defines geometric volumes along with commands to mesh the volumes depending on the file type. | + + + + + +### TraceOutputType +Indicates which trace regions to include in the 3D model. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| ALL_REGIONS | 0 | Both Conductor and Dielectric. | +| CONDUCTOR_REGIONS | 1 | The traces themselves. | +| DIELECTRIC_REGIONS | 2 | Regions that surround the conductor regions (Ex. areas filled with resin). | + + + + + + + + + +### SherlockModelService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| exportFEAModel | [.ExportFEAModelRequest](#ExportFEAModelRequest) | [.ReturnCode](#ReturnCode) | Export an FEA Model. | +| exportTraceReinforcementModel | [.ExportTraceReinforcementModelRequest](#ExportTraceReinforcementModelRequest) | [.ReturnCode](#ReturnCode) | Export a trace reinforcement model. | +| generateTraceModel | [.GenerateTraceModelRequest](#GenerateTraceModelRequest) | [.ReturnCode](#ReturnCode) | Generate a trace model. | +| exportTraceModel | [.ExportTraceModelRequest](#ExportTraceModelRequest) | [.ReturnCode](#ReturnCode) | Export a trace model. | +| exportAEDB | [.ExportAEDBRequest](#ExportAEDBRequest) | [.ReturnCode](#ReturnCode) | Export an Electronics Desktop model. | + + + + + + + + +## SherlockPartsService.proto +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### ExportNetListRequest +Contains the options needed to export a net list to a delimited output file (csv but can have delimiters other than a comma) + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| outputFilePath | [string](#string) | | Full path of the file where the table will be written. | +| overwriteExisting | [bool](#bool) | | Flag to determine if existing files should be overwritten if they match the outputFilePath. False by default. | +| colDelimiter | [TableDelimiter](#TableDelimiter) | | Enum that specifies supported delimiter character to be used. Set to COMMA by default. Not applicable to Excel files like xls, xlsx. | +| utf8Enabled | [bool](#bool) | | Flag that specifies if UTF-8 will be used. False by default. Not applicable to Excel files like xls, xlsx. | + + + + + + + + +### ExportPartsListRequest +Request to export the parts list for all parts for a project CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| exportFile | [string](#string) | | Full file path to the export parts list .csv file. | + + + + + + + + +### GetBoardSidesRequest +Request to list valid board sides. + + + + + + + + +### GetBoardSidesResponse +Represents a list of valid board sides. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boardSides | [string](#string) | repeated | Board sides. | + + + + + + + + +### GetPartLocationRequest +Request to get a part's location. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| refDes | [string](#string) | | A comma separated list of reference designators for a list of parts, or a Ref Des for one part. | +| locationUnits | [string](#string) | | Unit of length for the part location. Supported values are IN, MM, M, MIL, MICRON, and NM. | + + + + + + + + +### GetPartLocationResponse +Represents one or multiple parts' location properties + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| locationData | [GetPartLocationResponse.LocationData](#GetPartLocationResponse-LocationData) | repeated | List of location data for a part or list of parts in a specified project and CCA. | + + + + + + + + +### GetPartLocationResponse.LocationData + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| x | [double](#double) | | Location of the part along the X axis. | +| y | [double](#double) | | Location of the part along the Y axis. | +| rotation | [double](#double) | | Rotation of the part on the board in degrees. | +| locationUnits | [string](#string) | | Unit of length for the part location. | +| boardSide | [string](#string) | | Side of board on which the component exists. | +| mirrored | [bool](#bool) | | Indicates if the component is mirrored across the Y-axis. | +| refDes | [string](#string) | | Ref Des for the corresponding part. | + + + + + + + + +### GetPartLocationUnitsRequest +Request to list valid location units. + + + + + + + + +### GetPartLocationUnitsResponse +Represents a list of valid location units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| units | [string](#string) | repeated | Location units. | + + + + + + + + +### ImportPartsListRequest +Request to import a parts list for a project CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| importFile | [string](#string) | | Full file path to the parts list .csv file. | +| importAsUserSrc | [bool](#bool) | | If true, set the data source of the properties to "User". Otherwise, set the data source to the name of the importFile. | + + + + + + + + +### ListPartsLibrariesRequest +Request to list the available parts libraries. + + + + + + + + +### ListPartsLibrariesResponse +Represents a list of available parts libraries. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| partLibrary | [string](#string) | repeated | Parts library name. | + + + + + + + + +### ListPartsNotUpdatedRequest +Request to get a list of parts not updated from the Sherlock Part Library. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListPartsNotUpdatedResponse +Represents a list of parts not updated from the Sherlock Part Library. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccas | [ListPartsNotUpdatedResponse.CCA](#ListPartsNotUpdatedResponse-CCA) | repeated | List of CCAs containing Parts not updated. | + + + + + + + + +### ListPartsNotUpdatedResponse.CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| parts | [ListPartsNotUpdatedResponse.CCA.Part](#ListPartsNotUpdatedResponse-CCA-Part) | repeated | List of Parts not updated for a CCA. | + + + + + + + + +### ListPartsNotUpdatedResponse.CCA.Part + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | | Reference designator for the part. | +| partNumber | [string](#string) | | Part number. | + + + + + + + + +### UpdateLeadModelingRequest +Request to enable Lead Modeling for all non LEADLESS parts leads. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### UpdatePartsListFromAVLRequest +Request to update the parts list from AVL. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| matching | [MatchingMode](#MatchingMode) | | How sherlock matches parts in the AVL | +| duplication | [DuplicationMode](#DuplicationMode) | | How sherlock handles duplicate parts found. | +| avlPartNum | [AVLPartNum](#AVLPartNum) | | Update part number and vendor/manufacturer or part number only. | +| avlDesc | [AVLDescription](#AVLDescription) | | Update description or not. | + + + + + + + + +### UpdatePartsListFromAVLResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| numPartsUpdated | [int32](#int32) | | Number of parts updated in the parts list. | +| updateErrors | [string](#string) | repeated | Specific errors that occured during update. | + + + + + + + + +### UpdatePartsListPropertiesRequest +Request to update one or more properties of one or more parts in a parts list. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name for which part properties will be updated. | +| partProperties | [UpdatePartsListPropertiesRequest.PartProperties](#UpdatePartsListPropertiesRequest-PartProperties) | repeated | List of parts with properties to be updated. | + + + + + + + + +### UpdatePartsListPropertiesRequest.PartProperties + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | repeated | The reference designator for each part to be updated. If not included, update properties for all parts in the CCA. | +| properties | [UpdatePartsListPropertiesRequest.PartProperties.Property](#UpdatePartsListPropertiesRequest-PartProperties-Property) | repeated | Part properties to be updated. | + + + + + + + + +### UpdatePartsListPropertiesRequest.PartProperties.Property + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of property to be updated. | +| value | [string](#string) | | Value to be applied to the chosen part property. | + + + + + + + + +### UpdatePartsListPropertiesResponse +Contains the status of the parts properties update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateErrors | [UpdatePartsListPropertiesResponse.PartPropertyError](#UpdatePartsListPropertiesResponse-PartPropertyError) | repeated | Part property update errors. | + + + + + + + + +### UpdatePartsListPropertiesResponse.PartPropertyError + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | optional | The reference designator of the part. Not set for invalid property name errors. | +| message | [string](#string) | | Error message when updating the part. | + + + + + + + + +### UpdatePartsListRequest +Request to update a parts list based on matching and duplication preferences provided. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partLibrary | [string](#string) | | Parts library name. | +| matching | [MatchingMode](#MatchingMode) | | Designates the matching mode for updates. | +| duplication | [DuplicationMode](#DuplicationMode) | | Designates how to handle duplications during update. | + + + + + + + + +### UpdatePartsListResponse +Contains the status of the update as well as all of the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts update error messages. | + + + + + + + + +### UpdatePartsLocationsByFileRequest +Request to update one or more parts' locations using a CSV file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| numericFormat | [string](#string) | | Numeric format for the file. If not provided, it will default to "English (United States)". | +| filePath | [string](#string) | | File that contains the components and location properties. | + + + + + + + + +### UpdatePartsLocationsByFileResponse +Contains the status of the parts locations update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts locations update error messages. | + + + + + + + + +### UpdatePartsLocationsRequest +Request to set a part's location. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| partLoc | [UpdatePartsLocationsRequest.PartLocation](#UpdatePartsLocationsRequest-PartLocation) | repeated | List of part locations to be updated for a specified project and CCA. | + + + + + + + + +### UpdatePartsLocationsRequest.PartLocation + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| refDes | [string](#string) | | Reference designator of the part. | +| x | [string](#string) | | Location of the part along the X axis. | +| y | [string](#string) | | Location of the part along the Y axis. | +| rotation | [string](#string) | | Rotation of the part on the board in degrees. | +| locationUnits | [string](#string) | | Unit of length for the part location. Supported values are IN, MM, M, MIL, MICRON, and NM. | +| boardSide | [string](#string) | | Side of board on which the component exists. Supported values are TOP and BOTTOM. | +| mirrored | [string](#string) | | Indicates if the component is mirrored across the Y-axis. Supported values are Y, and N. | + + + + + + + + +### UpdatePartsLocationsResponse +Contains the status of the parts locations update as well as all the update error messages. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| updateError | [string](#string) | repeated | Parts locations update error messages. | + + + + + + + + + + +### AVLDescription +Determines if the part description in the parts list +will be updated by the AVL. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| AssignApprovedDescription | 0 | Assign approved description. | +| DoNotChangeDescription | 1 | Do not change description. | + + + + + +### AVLPartNum +Determines what fields in the part list will get updated by the AVL. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| AssignInternalPartNum | 0 | Assign internal part number. | +| AssignVendorAndPartNum | 1 | Assign vendor & part number. | +| DoNotChangeVendorOrPartNum | 2 | Do not change vendor / part number. | + + + + + +### DuplicationMode +Determines what happens when there are duplicate matches for parts in the part list +against parts in the AVL or Part Library. + +| Name | Number | Description | +| ---- | ------ | ----------- | +| First | 0 | Uses first matched when there is duplication. | +| Error | 1 | Generates an error when there is duplication. | +| Ignore | 2 | Ignore the matches when there is duplication. | + + + + + + + + + +### SherlockPartsService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| listPartsLibraries | [.ListPartsLibrariesRequest](#ListPartsLibrariesRequest) | [.ListPartsLibrariesResponse](#ListPartsLibrariesResponse) | List the available parts libraries. | +| updatePartsList | [.UpdatePartsListRequest](#UpdatePartsListRequest) | [.UpdatePartsListResponse](#UpdatePartsListResponse) | Update the parts list for a project's CCA. | +| updatePartsListFromAVL | [.UpdatePartsListFromAVLRequest](#UpdatePartsListFromAVLRequest) | [.UpdatePartsListFromAVLResponse](#UpdatePartsListFromAVLResponse) | Update the parts list from the AVL. | +| updatePartsListProperties | [.UpdatePartsListPropertiesRequest](#UpdatePartsListPropertiesRequest) | [.UpdatePartsListPropertiesResponse](#UpdatePartsListPropertiesResponse) | Update the values of given parts. | +| listPartsNotUpdated | [.ListPartsNotUpdatedRequest](#ListPartsNotUpdatedRequest) | [.ListPartsNotUpdatedResponse](#ListPartsNotUpdatedResponse) | List the parts that have not been updated from the Sherlock Part Library. | +| updateLeadModeling | [.UpdateLeadModelingRequest](#UpdateLeadModelingRequest) | [.ReturnCode](#ReturnCode) | Enable lead modeling for all non LEADLESS parts leads in a project's CCA. | +| exportPartsList | [.ExportPartsListRequest](#ExportPartsListRequest) | [.ReturnCode](#ReturnCode) | Export parts list for all parts given a project's CCA. | +| importPartsList | [.ImportPartsListRequest](#ImportPartsListRequest) | [.ReturnCode](#ReturnCode) | Import a parts list for a given a project's CCA. | +| updatePartsLocations | [.UpdatePartsLocationsRequest](#UpdatePartsLocationsRequest) | [.UpdatePartsLocationsResponse](#UpdatePartsLocationsResponse) | Update one or more parts' locations. | +| updatePartsLocationsByFile | [.UpdatePartsLocationsByFileRequest](#UpdatePartsLocationsByFileRequest) | [.UpdatePartsLocationsByFileResponse](#UpdatePartsLocationsByFileResponse) | Update one or more parts' locations using a CSV file. | +| getPartLocationUnits | [.GetPartLocationUnitsRequest](#GetPartLocationUnitsRequest) | [.GetPartLocationUnitsResponse](#GetPartLocationUnitsResponse) | Get a list of valid part location units. | +| getBoardSides | [.GetBoardSidesRequest](#GetBoardSidesRequest) | [.GetBoardSidesResponse](#GetBoardSidesResponse) | Get a list of valid board side values. | +| getPartLocation | [.GetPartLocationRequest](#GetPartLocationRequest) | [.GetPartLocationResponse](#GetPartLocationResponse) | Get the location properties for a part. | +| exportNetList | [.ExportNetListRequest](#ExportNetListRequest) | [.ReturnCode](#ReturnCode) | Export the net list to a file | + + + + + + + + +## SherlockProjectService.proto +Copyright 2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### AddCcaRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Name of the project. | +| CCAs | [CCA](#CCA) | repeated | CCAs to add. | + + + + + + + + +### AddProjectRequest +Request to add a project to Sherlock. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| category | [string](#string) | | Project category. | +| description | [string](#string) | | Project description. | + + + + + + + + +### AddStrainMapRequest +Request to add strain map files to CCAs in a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| strainMapFiles | [AddStrainMapRequest.StrainMapFile](#AddStrainMapRequest-StrainMapFile) | repeated | Strain map files and associated properties to be added. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| strainMapFile | [string](#string) | | Full path to the strain map file to be added. | +| fileComment | [string](#string) | | File comment text. | +| headerRowCount | [int32](#int32) | | Number of rows before the column header in the file. | +| referenceIDColumn | [string](#string) | | Reference ID column name. | +| strainColumn | [string](#string) | | Strain column name. | +| strainUnits | [string](#string) | | Strain units used in the strain map file. Valid units: µε, ε. | +| cca | [string](#string) | repeated | Project CCA names to to add the file to. | +| numericFormat | [string](#string) | | Numeric format for values. | +| fileType | [AddStrainMapRequest.StrainMapFile.FileType](#AddStrainMapRequest-StrainMapFile-FileType) | | Type of the strain map file. | +| imageFile | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile) | | Image strain map file properties. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| coordinateUnits | [string](#string) | | Coordinate units used for board, lengend and image boundaries. | +| boardBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.NodeCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-NodeCoordinate) | repeated | Coordinates of the nodes which make up the board outline. | +| imageBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.ImageCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-ImageCoordinate) | | Coordinates of the board bounds within the image. | +| legendBounds | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendCoordinate](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-LegendCoordinate) | | Coordinates of the bounds of legend within the image. | +| legendOrientation | [AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendOrientation](#AddStrainMapRequest-StrainMapFile-StrainMapImageFile-LegendOrientation) | | Specify the legend orientation. | +| minStrain | [double](#double) | | Minimum strain value. | +| maxStrain | [double](#double) | | Maximum strain value. | +| strainUnits | [string](#string) | | Units for minimum and maximum strain values. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.ImageCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| imageX | [double](#double) | | X-coordinate of the upper left corner. | +| imageY | [double](#double) | | Y-coordinate of the upper left corner. | +| imageH | [double](#double) | | Height of the image. | +| imageW | [double](#double) | | Width of the image. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| legendX | [double](#double) | | X-coordinate of the upper left corner. | +| legendY | [double](#double) | | Y-coordinate of the upper left corner. | +| legendH | [double](#double) | | Height of the legend. | +| legendW | [double](#double) | | Width of the legend. | + + + + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.NodeCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| vertexX | [double](#double) | | X-coordinate of the node. | +| vertexY | [double](#double) | | Y-coordinate of the node. | + + + + + + + + +### AddStrainMapResponse +Response from adding strain map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### AddThermalMapRequest +Request to add thermal map files to a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalMapFiles | [AddThermalMapRequest.AddThermalMap](#AddThermalMapRequest-AddThermalMap) | repeated | Thermal map files and associated properties to be added. | + + + + + + + + +### AddThermalMapRequest.AddThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| thermalMapFile | [string](#string) | | Full path to the thermal map file to be added. | +| thermalMapFileProperties | [ThermalMapFile](#ThermalMapFile) | | Thermal map file properties. | + + + + + + + + +### AddThermalMapResponse +Response from adding thermal map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + +### CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the circuit card. | +| description | [string](#string) | optional | Description of the circuit card. | +| defaultSolderType | [string](#string) | optional | Default solder type. | +| defaultStencilThickness | [double](#double) | optional | Default stencil thickness. | +| defaultStencilThicknessUnits | [string](#string) | optional | Default stencil thickness units. | +| defaultPartTempRise | [double](#double) | optional | Default part temp rise. | +| defaultPartTempRiseUnits | [string](#string) | optional | Default part temp rise units. | +| guessPartPropertiesEnabled | [bool](#bool) | optional | Whether to enable guess part properties. | + + + + + + + + +### CreateCcaFromModelingRegionRequest +Request for creating CCA from a specified modeling region. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cCAsFromModelingRegions | [CreateCcaFromModelingRegionRequest.CCAFromModelingRegion](#CreateCcaFromModelingRegionRequest-CCAFromModelingRegion) | repeated | CCAs from modeling regions to add. | + + + + + + + + +### CreateCcaFromModelingRegionRequest.CCAFromModelingRegion +Request for each individual property of cca + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Project CCA name. | +| modelingRegionID | [string](#string) | | ID of CCA's modeling region used to create new CCA. | +| description | [string](#string) | | CCA's description. | +| defaultSolderType | [string](#string) | optional | Default solder type. | +| defaultStencilThickness | [double](#double) | optional | Default stencil thickness. | +| defaultStencilThicknessUnits | [string](#string) | optional | Default stencil thickness units. | +| defaultPartTempRise | [double](#double) | optional | Default part temp rise. | +| defaultPartTempRiseUnits | [string](#string) | optional | Default part temp rise units. | +| guessPartProperties | [bool](#bool) | optional | Whether to enable guess part properties. | +| generateImageLayers | [bool](#bool) | optional | Whether to generate image layers | + + + + + + + + +### DeleteProjectRequest +Request for deleting project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Project name of project to be deleted. | + + + + + + + + +### ExportProjectRequest +Request for exporting the designated Sherlock project as a .zip file. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| exportDesignFiles | [bool](#bool) | | If true, export all design files assigned to the project. | +| exportResultFiles | [bool](#bool) | | If true, export all analysis module results. | +| exportArchivedResults | [bool](#bool) | | If true, export all archived result files. | +| exportUserFiles | [bool](#bool) | | If true, export all user properties and custom data files. | +| exportLogFiles | [bool](#bool) | | If true, export all Sherlock console and application logs. | +| exportSystemData | [bool](#bool) | | If true, export all system technical data. | +| exportFileDirectory | [string](#string) | | Full path of the directory where the .zip file is to be exported. | +| exportFileName | [string](#string) | | Name of the zip file containing the project's exported data. | +| overwriteExistingFile | [bool](#bool) | | If true, an existing file will be overwritten. | + + + + + + + + +### GenCCAReportRequest +Request for project CCA report. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | | Project CCA name. | +| author | [string](#string) | | Name of the author who generates the report. | +| company | [string](#string) | | Name of author's company. | + + + + + + + + +### GenCCAReportResponse +Streams the project CCA report in chunks. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| content | [bytes](#bytes) | | A chunk of the project CCA report being returned in increments. | +| size | [int32](#int32) | | Size of the chunk returned. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### GenReportRequest +Request for project report. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| author | [string](#string) | | Name of the author who generates the report. | +| company | [string](#string) | | Name of author's company. | + + + + + + + + +### GenReportResponse +Streams the project report in chunks. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| content | [bytes](#bytes) | | A chunk of the project report being returned in increments. | +| size | [int32](#int32) | | Size of the chunk returned. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### ImportIPC2581Request +Request for importing an IPC-2581 archive. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| archiveFile | [string](#string) | | Full path to the IPC-2581 archive file to be imported. | +| project | [string](#string) | | Sherlock project name. If empty, the filename will be used for the project name. | +| ccaName | [string](#string) | | Project CCA name. If empty, the filename will be used for the CCA name. | +| includeOtherLayers | [bool](#bool) | | Option to include other layers. | +| guessPartProperties | [bool](#bool) | | Option to guess part properties. | +| polylineSimplification | [bool](#bool) | | Option to enable polyline simplification. | +| polylineTolerance | [double](#double) | | Polyline simplification tolerance. | +| polylineToleranceUnits | [string](#string) | | Polyline simplification tolerance units. | + + + + + + + + +### ImportODBRequest +Request for importing an ODB++ archive. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| archiveFile | [string](#string) | | Full path to the ODB++ archive file to be imported. | +| project | [string](#string) | | Sherlock project name. If empty, the filename will be used for the project name. | +| ccaName | [string](#string) | | Project CCA name. If empty, the filename will be used for the CCA name. | +| processLayerThickness | [bool](#bool) | | Option to assign stackup thickness. | +| includeOtherLayers | [bool](#bool) | | Option to include other layers. | +| processCutoutFile | [bool](#bool) | | Option to process cutouts. | +| guessPartProperties | [bool](#bool) | | Option to guess part properties. | +| imsStackup | [bool](#bool) | | Option to generate IMS stackup. | +| polylineSimplification | [bool](#bool) | | Option to enable polyline simplification. | +| polylineTolerance | [double](#double) | | Polyline simplification tolerance. | +| polylineToleranceUnits | [string](#string) | | Polyline simplification tolerance units. | + + + + + + + + +### ImportProjectZipRequest +Request for importing a .zip project archive when Sherlock is in multiple project mode. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| category | [string](#string) | | Sherlock project category. | +| archiveFile | [string](#string) | | Full path to the .zip archive file containing the project data. | + + + + + + + + +### ImportProjectZipSingleModeRequest +Request for importing a .zip project archive when Sherlock is in single project mode. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| projZipRequest | [ImportProjectZipRequest](#ImportProjectZipRequest) | | Encapsulates project name, category and full path to project .zip archive. | +| destFileDir | [string](#string) | | Directory in which the Sherlock project folder will be created. | + + + + + + + + +### ListCCAsRequest +Request to list CCA's and sub-assembly CCA's for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to return. | + + + + + + + + +### ListCCAsResponse +Represents the circuit cards, their properties, and sub-assemblies for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccas | [ListCCAsResponse.CCA](#ListCCAsResponse-CCA) | repeated | CCA's assigned to the project. | + + + + + + + + +### ListCCAsResponse.CCA + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| subAssemblies | [ListCCAsResponse.CCA](#ListCCAsResponse-CCA) | repeated | Sub-assemblies assigned to the CCA. | + + + + + + + + +### ListStrainMapsRequest +Request to list CCA strain maps for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to list strain maps for. | + + + + + + + + +### ListStrainMapsResponse +Lists the strain maps assigned to the project CCA's. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of errors encountered. | +| ccaStrainMaps | [ListStrainMapsResponse.CcaStrainMap](#ListStrainMapsResponse-CcaStrainMap) | repeated | CCA strain maps assigned to the project. | + + + + + + + + +### ListStrainMapsResponse.CcaStrainMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of the CCA. | +| strainMaps | [string](#string) | repeated | Strain map names assigned to the CCA. | + + + + + + + + +### ListThermalMapsRequest +Request to list Thermal map files and their types for a project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| cca | [string](#string) | repeated | Optional project CCA names to list thermal maps for. | + + + + + + + + +### ListThermalMapsResponse +Represents the thermal map files and their types for a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of errors encountered. | +| ccaThermalMaps | [ListThermalMapsResponse.CcaThermalMap](#ListThermalMapsResponse-CcaThermalMap) | repeated | CCA thermal map files assigned to the project. | + + + + + + + + +### ListThermalMapsResponse.CcaThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Project CCA name. | +| thermalMaps | [ListThermalMapsResponse.CcaThermalMap.ThermalMap](#ListThermalMapsResponse-CcaThermalMap-ThermalMap) | repeated | Thermal map files assigned to the CCA. | + + + + + + + + +### ListThermalMapsResponse.CcaThermalMap.ThermalMap + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fileName | [string](#string) | | Name of the Thermal Map file. | +| fileType | [string](#string) | | Thermal map file type. Possible values are: "Icepak Thermal Map (TMAP)", "Thermal Map (CSV)", "Thermal Map (Excel)", "Thermal Map (Image)". | + + + + + + + + +### ThermalMapFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| fileName | [string](#string) | | The name of the thermal file to update. | +| fileType | [ThermalMapFile.FileType](#ThermalMapFile-FileType) | | Thermal file type. | +| fileComment | [string](#string) | | Include a comment or description for the file. | +| thermalBoardSide | [ThermalMapFile.ThermalBoardSide](#ThermalMapFile-ThermalBoardSide) | | Thermal board side. | +| csvExcelFile | [ThermalMapFile.CsvExcelFile](#ThermalMapFile-CsvExcelFile) | | Used to CSV and Excel files. | +| imageFile | [ThermalMapFile.ImageFile](#ThermalMapFile-ImageFile) | | Used to add properties to Image files. | +| thermalProfiles | [string](#string) | repeated | List of thermal profiles. | +| cca | [string](#string) | repeated | Project CCA Name. | + + + + + + + + +### ThermalMapFile.CsvExcelFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| headerRowCount | [int32](#int32) | | Number of rows before the column header in the file. | +| referenceIDColumn | [string](#string) | | Reference ID column. | +| temperatureColumn | [string](#string) | | Temperature column. | +| temperatureUnits | [string](#string) | | Units for temperature values. | +| numericFormat | [string](#string) | | Numeric format for values. | + + + + + + + + +### ThermalMapFile.ImageFile + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| coordinateUnits | [string](#string) | | Coordinate units used for board, lengend and image boundaries. | +| boardBounds | [ThermalMapFile.ImageFile.NodeCoordinate](#ThermalMapFile-ImageFile-NodeCoordinate) | repeated | Coordinates of the nodes which make up the board outline. | +| imageBounds | [ThermalMapFile.ImageFile.ImageCoordinate](#ThermalMapFile-ImageFile-ImageCoordinate) | | Coordinates of the board bounds within the image. | +| legendBounds | [ThermalMapFile.ImageFile.LegendCoordinate](#ThermalMapFile-ImageFile-LegendCoordinate) | | Coordinates of the bounds of legend within the image. | +| legendOrientation | [ThermalMapFile.ImageFile.LegendOrientation](#ThermalMapFile-ImageFile-LegendOrientation) | | Specify the legend orientation. | +| minTemperature | [double](#double) | | Minimum temperature value. | +| minTemperatureUnits | [string](#string) | | Units for minimum temperature value. | +| maxTemperature | [double](#double) | | Maximum temperature value. | +| maxTemperatureUnits | [string](#string) | | Units for maximum temperature value. | + + + + + + + + +### ThermalMapFile.ImageFile.ImageCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| imageX | [double](#double) | | X-coordinate of the upper left corner. | +| imageY | [double](#double) | | Y-coordinate of the upper left corner. | +| imageH | [double](#double) | | Height of the image. | +| imageW | [double](#double) | | Width of the image. | + + + + + + + + +### ThermalMapFile.ImageFile.LegendCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| legendX | [double](#double) | | X-coordinate of the upper left corner. | +| legendY | [double](#double) | | Y-coordinate of the upper left corner. | +| legendH | [double](#double) | | Height of the legend. | +| legendW | [double](#double) | | Width of the legend. | + + + + + + + + +### ThermalMapFile.ImageFile.NodeCoordinate + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| vertexX | [double](#double) | | X-coordinate of the node. | +| vertexY | [double](#double) | | Y-coordinate of the node. | + + + + + + + + +### UpdateThermalMapRequest +Request to update thermal map files to a Sherlock project. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| thermalMapFiles | [ThermalMapFile](#ThermalMapFile) | repeated | Thermal Map files. | + + + + + + + + +### UpdateThermalMapsResponse +Response from updating thermal map files. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| errors | [string](#string) | repeated | List of validation errors. | + + + + + + + + + + +### AddStrainMapRequest.StrainMapFile.FileType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| CSV | 0 | Csv file. | +| Excel | 1 | Excel file. | +| Image | 2 | Image file. | + + + + + +### AddStrainMapRequest.StrainMapFile.StrainMapImageFile.LegendOrientation + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Horizontal | 0 | Horizontal legend orientation. | +| Vertical | 1 | Vertical legend orientation. | + + + + + +### ThermalMapFile.FileType + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| CSV | 0 | Csv file. | +| Excel | 1 | Excel file. | +| Image | 2 | Image file. | +| TMAP | 3 | Icepack file. | + + + + + +### ThermalMapFile.ImageFile.LegendOrientation + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Horizontal | 0 | Horizontal legend orientation. | +| Vertical | 1 | Vertical legend orientation. | + + + + + +### ThermalMapFile.ThermalBoardSide + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Bottom | 0 | Bottom side of the board. | +| Both | 1 | Both sides of the board. | +| Top | 2 | Top side of the board. | + + + + + + + + + +### SherlockProjectService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| genReport | [.GenReportRequest](#GenReportRequest) | [.GenReportResponse](#GenReportResponse) stream | Generates the project report and return it via streaming. | +| genCCAReport | [.GenCCAReportRequest](#GenCCAReportRequest) | [.GenCCAReportResponse](#GenCCAReportResponse) stream | Generates the project CCA report and return it via streaming. | +| importODBArchive | [.ImportODBRequest](#ImportODBRequest) | [.ReturnCode](#ReturnCode) | Imports an ODB++ archive. | +| importIPC2581Archive | [.ImportIPC2581Request](#ImportIPC2581Request) | [.ReturnCode](#ReturnCode) | Imports an IPC-2581 archive. | +| importProjectZipArchive | [.ImportProjectZipRequest](#ImportProjectZipRequest) | [.ReturnCode](#ReturnCode) | Imports a zipped project archive -- multiple project mode. | +| importProjectZipArchiveSingleMode | [.ImportProjectZipSingleModeRequest](#ImportProjectZipSingleModeRequest) | [.ReturnCode](#ReturnCode) | Imports a zipped project archive -- single project mode. | +| deleteProject | [.DeleteProjectRequest](#DeleteProjectRequest) | [.ReturnCode](#ReturnCode) | Delete a project from Sherlock. | +| addStrainMap | [.AddStrainMapRequest](#AddStrainMapRequest) | [.AddStrainMapResponse](#AddStrainMapResponse) | Add a strain map files to a Sherlock project. | +| listStrainMaps | [.ListStrainMapsRequest](#ListStrainMapsRequest) | [.ListStrainMapsResponse](#ListStrainMapsResponse) | Returns a list of circuit cards and their assigned strain maps for a given Sherlock project. | +| listCCAs | [.ListCCAsRequest](#ListCCAsRequest) | [.ListCCAsResponse](#ListCCAsResponse) | Returns a list of circuit cards, their properties, and sub-assemblies for a given Sherlock project. | +| addProject | [.AddProjectRequest](#AddProjectRequest) | [.ReturnCode](#ReturnCode) | Add a project to Sherlock. | +| addCCA | [.AddCcaRequest](#AddCcaRequest) | [.ReturnCode](#ReturnCode) | Creates a new circuit card assembly. | +| listThermalMaps | [.ListThermalMapsRequest](#ListThermalMapsRequest) | [.ListThermalMapsResponse](#ListThermalMapsResponse) | Returns a list of thermal map files and their types for a given Sherlock project. | +| updateThermalMaps | [.UpdateThermalMapRequest](#UpdateThermalMapRequest) | [.UpdateThermalMapsResponse](#UpdateThermalMapsResponse) | Update thermal map files to a Sherlock project. | +| addThermalMaps | [.AddThermalMapRequest](#AddThermalMapRequest) | [.AddThermalMapResponse](#AddThermalMapResponse) | Add a thermal map to a Sherlock project. | +| exportProject | [.ExportProjectRequest](#ExportProjectRequest) | [.ReturnCode](#ReturnCode) | Exports project to a zipped archive file. | +| createCCAFromModelingRegion | [.CreateCcaFromModelingRegionRequest](#CreateCcaFromModelingRegionRequest) | [.ReturnCode](#ReturnCode) | Creates a CCA from a given modeling region | + + + + + + + + +## SherlockService.proto +Copyright 2020-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + +The APIs in this service should only be used for Sherlock integration with Workbench. + + + + +### ClientMessage + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| clientMessage | [string](#string) | | Incoming message from Workbench in bi-directional stream. | + + + + + + + + +### ExportRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportCcaName | [string](#string) | | CCA name. | +| destGeometryFile | [string](#string) | | Destination directory for exported geometry and materials. | +| systemName | [string](#string) | | gRPC system name. | +| componentName | [string](#string) | | gRPC component name. | +| analysis | [ExportRequest.ExportAnalysis](#ExportRequest-ExportAnalysis) | | Type of analysis to export. | + + + + + + + + +### ExportTraceReinforcementRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| exportCcaName | [string](#string) | | Name of CCA. | +| destGeometryFile | [string](#string) | | Destination directory for geometry files. | +| systemName | [string](#string) | | gRPC system name. | +| componentName | [string](#string) | | gRPC component name. | + + + + + + + + +### GetCCARequest + + + + + + + + + +### GetCCAResponse + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaNames | [string](#string) | repeated | List of CCA names for a specified project. | + + + + + + + + +### ImportRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| resultFile | [string](#string) | | Name of result file (.rst) to import. | +| projectName | [string](#string) | | Name of project associated with the result file. | +| ccaName | [string](#string) | | Name of CCA associated with the result file. | +| analysis | [ImportRequest.ImportAnalysis](#ImportRequest-ImportAnalysis) | | Type of analysis result. | +| modalResultFile | [string](#string) | | File name of modal result. | +| phaseName | [string](#string) | | The life cycle phase of the event associated with the results file. | +| eventName | [string](#string) | | The life cycle event associated with the results file. | +| modelTransform | [ImportRequest.ModelTransform](#ImportRequest-ModelTransform) | | Model transformation info associated with the results. | +| analysisImports | [ImportRequest.AnalysisImport](#ImportRequest-AnalysisImport) | repeated | List of various analysis results to import and the associated files. | + + + + + + + + +### ImportRequest.AnalysisImport + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | Name of CCA. | +| analysis | [ImportRequest.ImportAnalysis](#ImportRequest-ImportAnalysis) | | Type of analysis result. | +| rsts | [ImportRequest.AnalysisImport.rst](#ImportRequest-AnalysisImport-rst) | repeated | List of results file to import. | +| modelTransform | [ImportRequest.ModelTransform](#ImportRequest-ModelTransform) | | Model transformation info for the imported analysis results. | + + + + + + + + +### ImportRequest.AnalysisImport.rst + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| resultFile | [string](#string) | | Results file to import. | +| modalResultFile | [string](#string) | | Modal results file to import. | +| phaseName | [string](#string) | | The life cycle phase of the event associated with the results file. | +| eventName | [string](#string) | | The life cycle event associated with the results file. | + + + + + + + + +### ImportRequest.ModelTransform +Indicate the model transform detection to use. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| detectTransform | [ImportRequest.ModelTransform.DetectTransform](#ImportRequest-ModelTransform-DetectTransform) | | Type of model transformation detection to use. | +| transformX | [double](#double) | | Model translation applied in X direction. | +| transformY | [double](#double) | | Model translation applied in Y direction. | +| transformZ | [double](#double) | | Model translation applied in Z direction. | +| transformRotX | [double](#double) | | Model rotation (in degrees) applied in X direction. | +| transformRotY | [double](#double) | | Model rotation (in degrees) applied in Y direction. | +| transformRotZ | [double](#double) | | Model rotation (in degrees) applied in Z direction. | + + + + + + + + +### OpenProjectRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Directory location of the project to open. | + + + + + + + + +### SaveProjectRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Directory location where the project is to be saved. | + + + + + + + + +### ServerMessage +This is the message that is sent to Workbench whenever a relevant addition/update/deletion is made within Sherlock +that would affect the same project that is open in WB. + +Note that the enum Item refers to Workbench module terminology for the request changes. +These items are in a hierarchy and any changes or modifications flow downstream: +Project -> Setup -> Life Prediction + +If the Project item needs to be updated then that automatically means that +Setup and Life Prediction will be updated at well. Therefore, only one ServerMessage needs to +be sent to Workbench with Item = Project. + +States are all inclusive based on the states that are recognized in Workbench. Some of these may never need to be used +in ServerMessage but the enum contains the complete set just in case they are needed in the future, i.e., if the granularity +of the Sherlock changes become more finely-grained. For now we are using just the Modified state when constructing a +ServerMessage and sending it to WB. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| newState | [ServerMessage.State](#ServerMessage-State) | | The enum represents the states that are recognized in Workbench, inclusive. For now, Sherlock is just returning State.Modified. | +| updatedItem | [ServerMessage.Item](#ServerMessage-Item) | | Represents the first module in Workbench that is affected by the Sherlock change. | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | + + + + + + + + +### SetWorkingDirRequest + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| directory | [string](#string) | | Path to set as working directory location for Sherlock projects. | + + + + + + + + + + +### ExportRequest.ExportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NF | 0 | Natural Frequency analysis type. | +| HV | 1 | Harmonic Vibe analysis type. | +| ICT | 2 | ICT Analysis type. | +| SH | 3 | Mechanical Shock analysis type.` | +| RV | 4 | Random Vibe analysis type. | + + + + + +### ImportRequest.ImportAnalysis + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| NaturalFreq | 0 | Natural Frequency result type. | +| HarmonicVibe | 1 | Harmonic Vibe result type. | +| ICTAnalysis | 2 | ICT Analysis result type. | +| MechanicalShock | 3 | Mechanical Shock result type. | +| RandomVibe | 4 | Random Vibe result type. | + + + + + +### ImportRequest.ModelTransform.DetectTransform + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| DISABLED | 0 | No model transformation is performed. | +| ENABLED | 1 | Sherlock automatically detects the model transformation. | +| MANUAL | 2 | User provides model transformation parameters. | + + + + + +### ServerMessage.Item + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Project | 0 | Project = WB/Mech Model Change. | +| Setup | 1 | Setup = Sherlock Pre. | +| LifePrediction | 2 | Life Prediction = Sherlock Post Change. | + + + + + +### ServerMessage.State + + +| Name | Number | Description | +| ---- | ------ | ----------- | +| Disabled | 0 | Workbench state -- not currently used. | +| EditRequired | 1 | Workbench state -- not currently used. | +| Incomplete | 2 | Workbench state -- not currently used. | +| InputChangesPending | 3 | Workbench state -- not currently used. | +| InternalError | 4 | Workbench state -- not currently used. | +| Interrupted | 5 | Workbench state -- not currently used. | +| Modified | 6 | A change occurred in Sherlock for which Workbench is to be notified. Only state currently used in Sherlock for Workbench notification. | +| OutOfDate | 7 | Workbench state -- not currently used. | +| Unfulfilled | 8 | Workbench state -- not currently used. | +| UpToDate | 9 | Workbench state -- not currently used. | + + + + + + + + + +### SherlockService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| openProject | [.OpenProjectRequest](#OpenProjectRequest) | [.ReturnCode](#ReturnCode) | Opens specific Sherlock project given the full path. | +| saveProject | [.SaveProjectRequest](#SaveProjectRequest) | [.ReturnCode](#ReturnCode) | Saves all Sherlock project files given the destination path. | +| export | [.ExportRequest](#ExportRequest) | [.ReturnCode](#ReturnCode) | Export request for geometry and materials given the full destination directory and file names. | +| importRst | [.ImportRequest](#ImportRequest) | [.ReturnCode](#ReturnCode) | Request for Sherlock to import the given .rst file. | +| getCCA | [.GetCCARequest](#GetCCARequest) | [.GetCCAResponse](#GetCCAResponse) | Returns a list of circuit board names given a project name. | +| exportTraceReinforcement | [.ExportTraceReinforcementRequest](#ExportTraceReinforcementRequest) | [.ReturnCode](#ReturnCode) | Export Trace Reinforcement model request given the full destination directory and file names. | +| isSherlockClientLoading | [.IsSherlockClientLoadingRequest](#IsSherlockClientLoadingRequest) | [.ReturnCode](#ReturnCode) | Check if SherlockClient is still loading. | +| setWorkingDir | [.SetWorkingDirRequest](#SetWorkingDirRequest) | [.ReturnCode](#ReturnCode) | Set working directory. In the case where there is not already a project loaded in Sherlock, this API sets the default project directory for any new project created. In the case where there is already a project loaded in Sherlock, this API reloads the project from the new directory provided and refreshes the Sherlock UI. | +| eventCommunication | [.ClientMessage](#ClientMessage) stream | [.ServerMessage](#ServerMessage) stream | Bi-directional stream between Sherlock and Workbench that notifies Workbench of specific changes/updates made within Sherlock that would affect the same project open in Workbench. | + + + + + + + + +## SherlockStackupService.proto +Copyright 2023-2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited. + + + + +### GenStackupRequest +Request to generate stackup layers for a CCA. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| boardThickness | [double](#double) | | Board thickness. | +| boardThicknessUnit | [string](#string) | | Board thickness unit. | +| pcbMaterialManufacturer | [string](#string) | | PCB material manufacturer. | +| pcbMaterialGrade | [string](#string) | | PCB material grade. | +| pcbMaterial | [string](#string) | | PCB material. | +| conductorLayersCnt | [int32](#int32) | | Number of conductor layers. | +| signalLayerThickness | [double](#double) | | Signal layer thickness. | +| signalLayerThicknessUnit | [string](#string) | | Signal layer thickness unit. | +| minLaminateThickness | [double](#double) | | Minimum laminate layer thickness. | +| minLaminateThicknessUnit | [string](#string) | | Minimum laminate layer thickness unit. | +| maintainSymmetry | [bool](#bool) | | If set to true, maintain symmetry. | +| powerLayerThickness | [double](#double) | | Power layer thickness. | +| powerLayerThicknessUnit | [string](#string) | | Power layer thickness unit. | + + + + + + + + +### GetLayerCountRequest +Request the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### GetLayerCountResponse +Represents the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| count | [int32](#int32) | | Number of stackup layers. | + + + + + + + + +### GetStackupPropsRequest +Request a summary of the stackup properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | + + + + + + + + +### GetStackupPropsResponse +Represents a summary of the stackup properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| boardDimension | [string](#string) | | Board dimension. | +| boardThickness | [string](#string) | | Board thickness. | +| density | [string](#string) | | Board density. | +| conductorLayersCnt | [string](#string) | | Number of conductor layers. | +| ctExy | [string](#string) | | CTExy. | +| ctEz | [string](#string) | | CTEz. | +| exy | [string](#string) | | Exy. | +| ez | [string](#string) | | Ez. | + + + + + + + + +### GetTotalConductorThicknessRequest +Request the total thickness on all conductor layers in a stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | + + + + + + + + +### GetTotalConductorThicknessResponse +Represents the number of layers in the stackup. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| totalThickness | [double](#double) | | Total thickness. | + + + + + + + + +### ListConductorLayersRequest +Request for a list of conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListConductorLayersResponse +Represents the properties for all CCAs and their corresponding conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaConductorLayerProps | [ListConductorLayersResponse.CCAConductorLayerProp](#ListConductorLayersResponse-CCAConductorLayerProp) | repeated | List of CCAs and their associated conductor layers for a specified project. | + + + + + + + + +### ListConductorLayersResponse.CCAConductorLayerProp +Represents a CCA and its conductor layers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| conductorLayerProps | [ListConductorLayersResponse.CCAConductorLayerProp.ConductorLayerProp](#ListConductorLayersResponse-CCAConductorLayerProp-ConductorLayerProp) | repeated | List of conductor layers and their associated properties for a specified CCA. | + + + + + + + + +### ListConductorLayersResponse.CCAConductorLayerProp.ConductorLayerProp +Represents a conductor layer and its properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| layer | [string](#string) | | An internal layer ID associated with this conductor layer. | +| type | [string](#string) | | Layer type (i.e. SIGNAL, POWER, SUBSTRATE). | +| material | [string](#string) | | Name of this conductor material. | +| thickness | [double](#double) | | Conductor layer thickness. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| resinMaterial | [string](#string) | | Resin material. | +| density | [double](#double) | | Layer density. | +| CTExy | [double](#double) | | CTExy. | +| CTEz | [double](#double) | | CTEz. | +| Exy | [double](#double) | | Exy. | +| Ez | [double](#double) | | Ez. | + + + + + + + + +### ListConductorMaterialsRequest +Request to list valid conductor materials. + + + + + + + + +### ListConductorMaterialsResponse +Represents a list of valid conductor materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| conductorMaterial | [string](#string) | repeated | Conductor material name. | + + + + + + + + +### ListConstructionStylesRequest +Request to list valid construction styles. + + + + + + + + +### ListConstructionStylesResponse +Represents a list of valid construction styles. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| constructionStyle | [string](#string) | repeated | Construction style. | + + + + + + + + +### ListFiberMaterialsRequest +Request to list valid fiber materials. + + + + + + + + +### ListFiberMaterialsResponse +Represents a list of valid fiber materials. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| fiberMaterial | [string](#string) | repeated | Fiber material name. | + + + + + + + + +### ListLaminateMaterialsManufacturersRequest +Request to list valid names of materials manufacturers. + + + + + + + + +### ListLaminateMaterialsManufacturersResponse +Represents a list of valid names of materials manufacturers. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| manufacturer | [string](#string) | repeated | Manufacturer name. | + + + + + + + + +### ListLaminateMaterialsRequest +Request to list materials from a given manufacturer. +If manufacturer is empty, all manufacturers and their materials will be returned. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| manufacturer | [string](#string) | | Manufacturer name. | + + + + + + + + +### ListLaminateMaterialsResponse +Represents a list of materials from a given manufacturer. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| manufacturerMaterials | [ListLaminateMaterialsResponse.ManufacturerMaterials](#ListLaminateMaterialsResponse-ManufacturerMaterials) | repeated | List of manufacturers and their associated grades and materials. | + + + + + + + + +### ListLaminateMaterialsResponse.ManufacturerMaterials + + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| manufacturer | [string](#string) | | Manufacturer name. | +| gradeMaterials | [ListLaminateMaterialsResponse.ManufacturerMaterials.GradeMaterials](#ListLaminateMaterialsResponse-ManufacturerMaterials-GradeMaterials) | repeated | List of Grades and their associated materials. | + + + + + + + + +### ListLaminateMaterialsResponse.ManufacturerMaterials.GradeMaterials +Represents a grade and the materials with this grade. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| grade | [string](#string) | | Grade. | +| laminateMaterial | [string](#string) | repeated | Material name. | + + + + + + + + +### ListLaminateThicknessUnitsRequest +Request to list valid laminate thickness units. + + + + + + + + +### ListLaminateThicknessUnitsResponse +Represents a list of valid laminate thickness units. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| unit | [string](#string) | repeated | Thickness unit. | + + + + + + + + +### ListLaminatesRequest +Request for a list of laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | + + + + + + + + +### ListLaminatesResponse +Represents the properties for all CCAs and their corresponding laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| returnCode | [ReturnCode](#ReturnCode) | | Status code of response. | +| ccaLaminateProps | [ListLaminatesResponse.CCALaminateProp](#ListLaminatesResponse-CCALaminateProp) | repeated | List of CCAs and their corresponding laminate layers. | + + + + + + + + +### ListLaminatesResponse.CCALaminateProp +Represents a CCA and its laminates. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| ccaName | [string](#string) | | The CCA name. | +| laminateProps | [ListLaminatesResponse.CCALaminateProp.LaminateProp](#ListLaminatesResponse-CCALaminateProp-LaminateProp) | repeated | List of laminate layers with associated properties for a specified CCA. | + + + + + + + + +### ListLaminatesResponse.CCALaminateProp.LaminateProp +Represents a laminate layer and its properties. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| layer | [string](#string) | | An internal layer ID associated with this laminate layer. | +| manufacturer | [string](#string) | | Manufacturer name of this material. | +| grade | [string](#string) | | Grade of this material. | +| material | [string](#string) | | Name of this material. | +| thickness | [double](#double) | | Laminate thickness. | +| thicknessUnit | [string](#string) | | Laminate thickness unit. | +| constructionStyle | [string](#string) | | Construction style. | +| glassConstructions | [ListLaminatesResponse.CCALaminateProp.LaminateProp.GlassConstruction](#ListLaminatesResponse-CCALaminateProp-LaminateProp-GlassConstruction) | repeated | List of Glass Construction info for a laminate layer. | +| fiberMaterial | [string](#string) | | Fiber material if the construction style is glass. | +| conductorMaterial | [string](#string) | | Conductor material. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| density | [double](#double) | | Layer density. | +| CTExy | [double](#double) | | CTExy. | +| CTEz | [double](#double) | | CTEz. | +| Exy | [double](#double) | | Exy. | +| Ez | [double](#double) | | Ez. | + + + + + + + + +### ListLaminatesResponse.CCALaminateProp.LaminateProp.GlassConstruction +Represents the layers with a glass construction. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| style | [string](#string) | | Glass construction style. | +| resinPercentage | [double](#double) | | Glass construction resin percentage. | +| thickness | [double](#double) | | Glass construction thickness. | +| thicknessUnit | [string](#string) | | Glass construction thickness unit. | + + + + + + + + +### UpdateConductorLayerRequest +Represents the conductor layer properties requested to be updated. +To update a thickness, a thickness unit must be provided. +Any property left out or set to "" or 0.0 will not be updated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| layer | [string](#string) | | The layer ID associated with this conductor layer. | +| type | [string](#string) | | Layer type (i.e. SIGNAL, POWER, SUBSTRATE). | +| material | [string](#string) | | Name of this conductor material. | +| thickness | [double](#double) | | Conductor layer thickness. | +| thicknessUnit | [string](#string) | | Conductor layer thickness unit. | +| conductorPercent | [string](#string) | | Conductor percentage. | +| resinMaterial | [string](#string) | | Resin material. | + + + + + + + + +### UpdateLaminateRequest +Represents the laminate properties requested to be updated. +To update the material, valid values must be provided for manufacturer, grade, and material. +To update a thickness, a thickness unit must be provided. +Glass construction should only be set when the construction style is not the "DEFAULT" value. +Any property left out or set to "" or 0.0 will not be updated. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| project | [string](#string) | | Sherlock project name. | +| ccaName | [string](#string) | | The CCA name. | +| layer | [string](#string) | | The internal layer ID associated with this laminate layer. | +| manufacturer | [string](#string) | | Manufacturer name of this material. Must be provided along with grade and material name. | +| grade | [string](#string) | | Grade of this material. | +| material | [string](#string) | | Name of this material. | +| thickness | [double](#double) | | Laminate thickness. | +| thicknessUnit | [string](#string) | | Laminate thickness unit. | +| constructionStyle | [string](#string) | | Construction style. | +| glassConstruction | [UpdateLaminateRequest.GlassConstruction](#UpdateLaminateRequest-GlassConstruction) | repeated | List of Glass Construction info for a laminate layer. | +| fiberMaterial | [string](#string) | | Fiber material. Only updated if glass construction is selected. | +| conductorMaterial | [string](#string) | | Conductor material. | +| conductorPercent | [string](#string) | | Conductor percentage. | + + + + + + + + +### UpdateLaminateRequest.GlassConstruction +Represents the layers with a glass construction. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| style | [string](#string) | | Glass construction style. | +| resinPercentage | [double](#double) | | Glass construction resin percentage. | +| thickness | [double](#double) | | Glass construction thickness. | +| thicknessUnit | [string](#string) | | Glass construction thickness unit. | + + + + + + + + + + + + + + +### SherlockStackupService + + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| listLaminates | [.ListLaminatesRequest](#ListLaminatesRequest) | [.ListLaminatesResponse](#ListLaminatesResponse) | Returns a list of project's CCAs and their laminates. | +| updateLaminate | [.UpdateLaminateRequest](#UpdateLaminateRequest) | [.ReturnCode](#ReturnCode) | Update properties for a given laminate layer. | +| listLaminateThicknessUnits | [.ListLaminateThicknessUnitsRequest](#ListLaminateThicknessUnitsRequest) | [.ListLaminateThicknessUnitsResponse](#ListLaminateThicknessUnitsResponse) | List all the supported laminate layer thickness units. | +| listConductorMaterials | [.ListConductorMaterialsRequest](#ListConductorMaterialsRequest) | [.ListConductorMaterialsResponse](#ListConductorMaterialsResponse) | List all conductor materials. | +| listFiberMaterials | [.ListFiberMaterialsRequest](#ListFiberMaterialsRequest) | [.ListFiberMaterialsResponse](#ListFiberMaterialsResponse) | List all fiber materials. | +| listLaminateMaterialsManufacturers | [.ListLaminateMaterialsManufacturersRequest](#ListLaminateMaterialsManufacturersRequest) | [.ListLaminateMaterialsManufacturersResponse](#ListLaminateMaterialsManufacturersResponse) | List all laminate materials manufacturers. | +| listLaminateMaterials | [.ListLaminateMaterialsRequest](#ListLaminateMaterialsRequest) | [.ListLaminateMaterialsResponse](#ListLaminateMaterialsResponse) | List all laminate materials (both based on manufacturer specified or without). If manufacturer is empty or not provided, then all manufacturers and their laminate materials will be returned. If a manufacturer is provided, then only that manufacturer's laminate materials will be returned. | +| listConstructionStyles | [.ListConstructionStylesRequest](#ListConstructionStylesRequest) | [.ListConstructionStylesResponse](#ListConstructionStylesResponse) | List all construction styles. | +| listConductorLayers | [.ListConductorLayersRequest](#ListConductorLayersRequest) | [.ListConductorLayersResponse](#ListConductorLayersResponse) | Returns a list of project's CCAs and their conductor layers. | +| updateConductorLayer | [.UpdateConductorLayerRequest](#UpdateConductorLayerRequest) | [.ReturnCode](#ReturnCode) | Update properties for a given conductor layer. | +| getLayerCount | [.GetLayerCountRequest](#GetLayerCountRequest) | [.GetLayerCountResponse](#GetLayerCountResponse) | Returns the number of stackup layers. | +| getTotalConductorThickness | [.GetTotalConductorThicknessRequest](#GetTotalConductorThicknessRequest) | [.GetTotalConductorThicknessResponse](#GetTotalConductorThicknessResponse) | Returns the total thickness for all conductor layers. | +| getStackupProps | [.GetStackupPropsRequest](#GetStackupPropsRequest) | [.GetStackupPropsResponse](#GetStackupPropsResponse) | Returns a summary of the stackup properties. | +| genStackup | [.GenStackupRequest](#GenStackupRequest) | [.ReturnCode](#ReturnCode) | Generate stackup layers. | + + + + + +## Scalar Value Types + +| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby | +| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- | +| double | | double | double | float | float64 | double | float | Float | +| float | | float | float | float | float32 | float | float | Float | +| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) | +| uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) | +| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) | +| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum | +| sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | +| sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum | +| bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | +| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) | +| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) | + diff --git a/2025R1_Test/sherlock-split-files/split-md-file.py b/2025R1_Test/sherlock-split-files/split-md-file.py new file mode 100644 index 0000000000..76940b3fb8 --- /dev/null +++ b/2025R1_Test/sherlock-split-files/split-md-file.py @@ -0,0 +1,43 @@ +import re +import sys + +def add_empty_row_after_headers(input_file): + with open(input_file, 'r') as f: + lines = f.readlines() + + with open(input_file, 'w') as f: + for i in range(len(lines)): + f.write(lines[i]) + if lines[i].startswith('#') and i+1 < len(lines) and lines[i+1].strip() != '': + f.write('\n') + + +def adjust_header_level(line): + match = re.match(r'(#+)( .*)', line) + if match and len(match.group(1)) > 1: # Ensure there's more than one '#' character + return match.group(1)[1:] + match.group(2) # Remove one '#' character + return line + +def split_markdown_file(input_file): + output_file = None + with open(input_file, 'r') as f: + for line in f: + if line.startswith('## '): + if output_file is not None: + output_file.close() + title = line.strip('# \n').replace(' ', '_') + output_file = open(f'{title}.md', 'w') + if output_file is not None: + output_file.write(adjust_header_level(line)) + if line.startswith('#'): + output_file.write('\n') + + if output_file is not None: + output_file.close() + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python split-md-file.py