Click here to return to the main index to Sherlock's APIs.
The APIs in this section allow you to perform different layer view operations to a board. Clicking on the active links in the table below will take you to the selected API.
Table 12.50: Index to Sherlock Layer Service APIs
Method Name | Request Type | Response Type | Description |
For display purposes, strings in the first three columns are broken into multiple lines and should be read as continuous. For example, the first string in column two should be interpreted as: .DeleteAllMountPointsRequest | |||
addPottingRegion | .AddPotting RegionRequest | .ReturnCode | Add a potting region with the specified shape and properties |
deleteAll ICTFixtures | .DeleteAllICTFixtures Request | .ReturnCode | Delete all ICT fixtures in specific cca of specific project. |
deleteAllMount Points | .DeleteAllMount PointsRequest | .ReturnCode | Request to delete all mount points in a specific CCA of a specific project. |
deleteAllTestPoints | .DeleteAllTestPoints Request | .ReturnCode | Delete all test points in specific cca of specific project. |
exportAllMount Points | .ExportAllMount PointsRequest | .ReturnCode | Request to export all mount points and their properties into a .csv formatted file. |
exportAllICT Fixtures | .ExportAllICTFixtures Request | .ReturnCode | Export all ICT fixtures andtheir properties into a CSVformatted file. |
exportAll TestPoints | .ExportAllTest PointsRequest | .ReturnCode | Export all test points and their properties into a CSV formatted file. |
getMountPoint Boundaries | .GetMountPoint BoundariesRequest | .GetMountPoint Boundaries Response | Get a list of valid Mount Point Boundaries. |
getMountPoint ChassisMaterials | .GetMountPoint ChassisMaterials Request | .GetMountPoint ChassisMaterials Response | Get a list of valid Mount Point chassis materials. |
getMountPoints Properties | .GetMountPoints PropertiesRequest | .GetMountPoints PropertiesResponse | Get a list of valid Mount Point Properties. |
getMountPoint ShapeTypes | .GetMountPoint ShapeTypesRequest | .GetMountPoint ShapeTypes Response | Get a list of valid Mount Point Shape Type values. |
getMountPoint Sides | .GetMountPoint SidesRequest | .GetMountPoint SidesResponse | Get a list of valid Mount Point Sides. |
getMountPoint Types | .GetMountPoint TypesRequest | .GetMountPoint TypesResponse | Get a list of valid Mount Point Type values. |
getMount PointUnits | .GetMountPoint UnitsRequest | .GetMountPoint UnitsResponse | Get a list of valid Mount Point Units. |
updateICTFixtures ByFile | .UpdateICTFixtures ByFileRequest | .UpdateICT FixturesResponse | See note below. |
updateICTFixturesByFile: 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 | .UpdateMount PointsRequest | .UpdateMount PointsResponse | Update mount points with specified properties |
updateMount PointsByFile | .UpdateMountPoints ByFileRequest | .UpdateMount PointsResponse | See note below. |
updateMountPointsByFile: 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 > ExportMountPoints. | |||
updateTest PointsByFile | .UpdateTest PointsByFileRequest | .UpdateTest PointsResponse | See note below. |
updateTestPointsByFile: 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 > ExportTestPoints. |
Links:
Request to add a potting region.
Table 12.51: AddPottingRegionRequest
Field | Type | Label | Description |
project | string | The name of the Sherlock project to add the potting regions to. | |
pottingRegions | ⇓ | repeated | The potting regions to add. |
AddPottingRegionRequest.PottingRegion |
Table 12.52: AddPottingRegionRequest.PottingRegion
Field | Type | Label | Description |
ccaName | string | The name of the CCA. | |
pottingID | string | optional | The potting ID, must be unique. |
pottingSide | string | optional | The potting side, options are "TOP", "BOT", or "BOTTOM". |
pottingMaterial | string | optional | The potting material. |
pottingUnits | string | optional | The units to use for the potting region. |
pottingThickness | double | optional | The potting thickness. |
pottingStandoff | double | optional | The potting standoff. |
polygonalShape | PolygonalShape | Used to add a region with a polygonal shape. | |
rectangularShape | RectangularShape | Used to add a region with a rectangular shape. | |
slotShape | SlotShape | Used to add a region with a slot shape. | |
circularShape | CircularShape | Used to add a region with a circular shape. | |
pCBShape | PCBShape | Used to add a region with a PCB shape. |
Table 12.53: CircularShape
Field | Type | Label | Description |
diameter | double | optional | The diameter of the circle. |
nodeCount | uint32 | optional | The number of nodes. |
centerX | double | optional | The x coordinate of the center of the circle. |
centerY | double | optional | The x coordinate of the center of the circle. |
rotation | double | optional | The rotation of the shape in degrees. |
Proto Request Example
{ "project": "Tutorial", "pottingRegions": [ { "ccaName": "Main Board", "pottingID": "PR1", "pottingSide": "TOP", "pottingMaterial": "EPOXYENCAPSULANT", "pottingUnits": "mm", "pottingThickness": 1.58, "pottingStandoff": 0.42, "polygonalShape": { "points": [ { "x": -23.2425, "y": -10.9293 }, { "x": -7.4136, "y": -3.7161 }, { "x": -4.6084, "y": -16.1389 } ], "rotation": 45.6 } } ] }
Python Example:
For a Python example, refer to the online PySherlock Reference.
Links:
Request to delete all ICT fixtures in a specific CCA of a specific project.
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to delete all mount points in a specific CCA of a specific project.
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to delete all test points in specific CCA of specific project.
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to export all ICT fixtures and their properties into a CSV formatted file.
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board", "units": "mm", "filePath": "C:\\Temp\\ICTFixtures.csv" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to export all mount points and their properties into a .csv formatted file.
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board, "units": "mm", "filePath": "C:\\Temp\\export.csv" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to export all test points and their properties into a CSV formatted file
Table 12.59: ExportAllTestPointsRequest
Field | Type | Label | Description |
project | string | Sherlock project name. | |
ccaName | string | The CCA name. | |
lengthUnits | string | Length Units used in exporting. | |
displacementUnits | string | Displacement Units used in exporting. | |
forceUnits | string | Force Units used in exporting. | |
filePath | string | The filepath of the CSV file to be exported. |
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board", "lengthUnits": "mm", "displacementUnits": "mm", "forceUnits": "n", "filePath": "C:\\Temp\\TestPointsExport.csv" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Represents a list of valid mount point boundaries.
Table 12.60: RunAnalysisRequest
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
boundary | string | repeated | Mount Point boundary. |
Proto Request Example
{ }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to list the valid mount point chassis materials.
Represents a list of valid mount point chassis materials.
Table 12.61: GetMountPointChassisMaterialsResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
chassisMaterial | string | repeated | Mount Point chassis material. |
Proto Request Example
{ }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to list the valid mount point shape types.
Table 12.62: GetMountPointShapeTypesRequest
Field | Type | Label | Description |
mountPointType | string | Mount Point Type. Supported values are: Mount Hole, Mount Pad, Standoff, and Support Pin. |
Represents a list of valid mount point shape types.
Table 12.63: GetMountPointShapeTypesResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
type | string | repeated | Mount Point Shape Type. |
Proto Request Example
{ "mountPointType": "Mount Hole" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Represents a list of valid mount point sides.
Table 12.64: GetMountPointSidesResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
side | string | repeated | Mount Point side. |
Proto Request Example
{ }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Represents a list of valid mount point types.
Table 12.65: GetMountPointTypesResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
type | string | repeated | Mount Point Type. |
Proto Request Example
{ }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Represents a list of valid mount point units.
Table 12.66: GetMountPointUnitsResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
units | string | repeated | Mount Point units. |
Proto Request Example
{ }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to list the valid mount point chassis materials.
Represents a list of valid mount point properties.
Table 12.68: GetMountPointsPropertiesResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
mountPointsProperties | MountPointProperties | repeated | Mount point properties. |
Properties of mount point. The properties may vary with the mount point type and mount point shape.
Table 12.69: MountPointProperties
Field | Type | Label | Description |
ID | string | Mount point ID | |
type | string | Mount point type | |
shape | string | Shape type | |
units | string | Mount point units | |
x | string | Center X | |
y | string | Center Y | |
length | string | Length | |
width | string | Width | |
diameter | string | Diameter | |
nodes | string | # of nodes | |
rotation | string | Rotation (degrees) | |
side | string | Mount point side | |
height | string | Mount point height | |
material | string | Mount point material | |
boundary | string | Boundary Pt(s). | |
constraints | string | FEA constraints | |
polygon | string | Coordinates of points | |
state | string | Mount point state | |
chassisMaterial | string | Chassis material |
Proto Request
{ "project": "Tutorial Project", "ccaName": "Main Board, "mountPointIDs": "MP1, MP2, MP3, MP4" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Table 12.70: PolygonalShape
Field | Type | Label | Description |
points | PolygonalShape.Point | repeated | The points used to define the polygonal shape, must be >= 3. |
rotation | double | optional | The rotation of the shape in degrees. |
Table 12.72: RectangularShape
Field | Type | Label | Description |
length | double | optional | The length of the rectangle. |
width | double | optional | The width of the rectangle. |
centerX | double | optional | The x coordinate of the center of the rectangle. |
centerY | double | optional | The y coordinate of the center of the rectangle. |
rotation | double | optional | The rotation of the rectangle in degrees. |
Table 12.73: SlotShape
Field | Type | Label | Description |
length | double | optional | The length of the slot shape. |
width | double | optional | The width of the slot shape. |
nodeCount | uint32 | optional | The number of nodes. |
centerX | double | optional | The x coordinate of the center of the slot shape. |
centerY | double | optional | The x coordinate of the center of the slot shape. |
rotation | double | optional | The rotation of the shape in degrees. |
Links:
Request to update ICT fixtures properties of a CCA from a CSV formatted file
Contains the status of the update as well as all the update error messages.
Table 12.75: UpdateICTFixturesResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
updateError | string | repeated | ICT fixtures update error messages. |
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board", "filePath": "C:\\PartsDir\\AM\\Sherlock\\ICTFixtures.csv" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to update mount points properties of a CCA from a CSV formatted file
Table 12.76: UpdateMountPointsRequest
Field | Type | Label | Description |
project | string | Sherlock project name. | |
ccaName | string | The CCA name. | |
mountPointsProperties | MountPointProperties | repeated | Mount point properties. |
Contains the status of the update as well as all the update error messages.
Table 12.77: UpdateMountPointsResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
updateError | string | repeated | Mount Points update error messages. |
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board", "mountPointsProperties": [ { "ID": "MP1", "type": "Mount Hole", "shape": "Circular", "units": "mm", "x": "0", "y": "0", "length": "3.56", "width": "3.56", "diameter": "3.56", "nodes": "8", "rotation": "0", "side": "TOP", "height": "0", "material": "DEFAULT", "boundary": "Outline", "constraints": "X-axis translation|Y-axis translation|Z-axis translation", "polygon": "", "state": "Enabled", "chassisMaterial": "ALUMINUM" } ] }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to update mount points properties of a CCA from a .csv formatted file.
Proto Request Example
{ "project": "Tutorial Project", "ccaName": "Main Board", "filePath": "C:\\PartsDir\\AM\\Sherlock\\updateMountPoints.csv" }
Python Example
For a Python example, refer to the online PySherlock Reference.
Links:
Request to update test points properties of a CCA from a CSV formatted file
Contains the status of the update as well as all the update error messages.
Table 12.80: UpdateTestPointsResponse
Field | Type | Label | Description |
returnCode | ReturnCode | Status code of response. | |
updateError | string | repeated | Test Points update error messages. |
Proto Request Example
import SherlockLayerService_pb2 import SherlockLayerService_pb2_grpc import grpc import os channel = grpc.insecure_channel('localhost:9090') stub = SherlockLayerService_pb2_grpc.SherlockLayerServiceStub(channel) message = SherlockLayerService_pb2.UpdateTestPointsByFileRequest() message.project = "Tutorial Project" message.ccaName = "Main Board" message.filePath = os.getcwd() + "\\TestPoints.csv" response = stub.updateTestPointsByFile(message) print(str(response))
Python Example
For a Python example, refer to the online PySherlock Reference.