File Management

FM_01: Receives file path from external UI for 3VXL file

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_01

Payload Definition

Type: LoadDataSet
{
  "Url": "String",
  "DecryptionKey": {
    "Key": "String",
    "Iv": "String"
  }
}

Example definition

Type: LoadDataSet
{
  "Url": "https://google.com/somepayload.3vxl",
  "DecryptionKey": {
    "Key": "<Encryption Key>",
    "Iv": "<Encryption IV>"
  }
}

Response Codes

CodeDescription
S00000Action was received from Front End.
S00001Action from Front End has completed.
F00000Error executing the supplied function
F00001Function is not defined
F00002Input data is not valid for function
F00003Unable to load scan. File could not be located.
F00004Unable to load scan due to its dimensions exceeding 2048 pixels.
F00005Unable to load scan. File not supported.
F00006Action did not execute within an allotted time
F00007Unable to load scan. File is too large.
F00008Function is not found
F00009Unable to connect to MSH cloud server to fetch scan
F00011The payload supplied is invalid
F00012Unable to access scan file to read.
F00013Pixel spacing in given scan file is invalid.
F00023Failed to decrypt the file
F00024Failed to extract the file
A00001Input value exceeded limits defined
I00000
I00001Reading file from cache
I00002Download finished

FM_02: 3CR sends file information to FE

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_02

Payload Definition

Type: InitialScanState
{
  "Version": "String",
  "XSlices": "Int32",
  "YSlices": "Int32",
  "ZSlices": "Int32",
  "Modality": "String",
  "HuUpper": "Int32",
  "HuLower": "Int32",
  "DefaultDisplaySettings": {
    "Version": "String",
    "CurrentView": "ENUM: ScanView",
    "Display": {
      "Version": "String",
      "WindowLower": "Float",
      "WindowUpper": "Float",
      "ThresholdLower": "Float",
      "ThresholdUpper": "Float",
      "Brightness": "Float",
      "Contrast": "Float",
      "Opacity": "Float"
    },
    "Slice": {
      "Version": "String",
      "TransverseLower": "Float",
      "TransverseUpper": "Float",
      "SagittalLower": "Float",
      "SagittalUpper": "Float",
      "CoronalLower": "Float",
      "CoronalUpper": "Float"
    },
    "InteractionSettings": {
      "Version": "String",
      "PanSensivitity": "Float",
      "ZoomSensitivity": "Float",
      "RotateSensitivity": "Float",
      "CameraRotateSensitivity": "Float",
      "KeyboardEnabled": "Boolean",
      "MouseEnabled": "Boolean",
      "InteractionMode": "ENUM: ViewInteractiveMode"
    },
    "Orientations": {
      "Version": "String",
      "Transverse": {
        "Version": "String",
        "View": "ENUM: ScanView",
        "VerticalFlip": "Boolean",
        "HorizontalFlip": "Boolean",
        "Rotation": "Float",
        "Slice": "Float"
      },
      "Sagittal": {
        "Version": "String",
        "View": "ENUM: ScanView",
        "VerticalFlip": "Boolean",
        "HorizontalFlip": "Boolean",
        "Rotation": "Float",
        "Slice": "Float"
      },
      "Coronal": {
        "Version": "String",
        "View": "ENUM: ScanView",
        "VerticalFlip": "Boolean",
        "HorizontalFlip": "Boolean",
        "Rotation": "Float",
        "Slice": "Float"
      }
    },
    "Layout": {
      "Version": "String",
      "SwitchOnViewChange": "Boolean",
      "PositionData": [
        {
          "Version": "String",
          "ActiveView": "Boolean",
          "DefaultView": "ENUM: ScanView",
          "Anchor": "ENUM: AnchorPoint",
          "Offset": {
            "Version": "String",
            "X": "Float",
            "Y": "Float"
          },
          "AspectRatio": "Float",
          "MaxSize": {
            "Version": "String",
            "X": "Float",
            "Y": "Float"
          },
          "Priority": "Int32"
        }
      ]
    },
    "Colour": {
      "Version": "String",
      "Name": "String",
      "ColourGradient": [
        {
          "Version": "String",
          "R": "Float",
          "G": "Float",
          "B": "Float",
          "Time": "Float"
        }
      ],
      "AlphaGradient": [
        {
          "Version": "String",
          "Alpha": "Float",
          "Time": "Float"
        }
      ]
    },
    "NavigationCube": {
      "Version": "String",
      "Transform": {
        "Version": "String",
        "AnchorPoint": "ENUM: AnchorPoint",
        "Position": {
          "Version": "String",
          "X": "Float",
          "Y": "Float"
        },
        "Size": {
          "Version": "String",
          "X": "Float",
          "Y": "Float"
        }
      },
      "Visibility": {
        "Version": "String",
        "Value": "Boolean"
      },
      "Interactivity": {
        "Version": "String",
        "Value": "Boolean"
      }
    }
  },
  "GreyscalePresets": [
    {
      "Version": "String",
      "Name": "String",
      "Lower": "Float",
      "Upper": "Float"
    }
  ],
  "ColourPresets": [
    {
      "Version": "String",
      "Name": "String",
      "ColourGradient": [
        {
          "Version": "String",
          "R": "Float",
          "G": "Float",
          "B": "Float",
          "Time": "Float"
        }
      ],
      "AlphaGradient": [
        {
          "Version": "String",
          "Alpha": "Float",
          "Time": "Float"
        }
      ]
    }
  ]
}

Example definition

Type: InitialScanState
{
  "Version": "0.0.1",
  "XSlices": 0,
  "YSlices": 0,
  "ZSlices": 0,
  "Modality": "CT",
  "HuUpper": 0,
  "HuLower": 0,
  "DefaultDisplaySettings": {
    "Version": "1.0.0",
    "CurrentView": 0,
    "Display": {
      "Version": "0.0.1",
      "WindowLower": 0,
      "WindowUpper": 0,
      "ThresholdLower": 0,
      "ThresholdUpper": 0,
      "Brightness": 0,
      "Contrast": 0,
      "Opacity": 0
    },
    "Slice": {
      "Version": "1.0.0",
      "TransverseLower": 0,
      "TransverseUpper": 0,
      "SagittalLower": 0,
      "SagittalUpper": 0,
      "CoronalLower": 0,
      "CoronalUpper": 0
    },
    "InteractionSettings": {
      "Version": "1.0.0",
      "PanSensivitity": 0,
      "ZoomSensitivity": 0,
      "RotateSensitivity": 0,
      "CameraRotateSensitivity": 0,
      "KeyboardEnabled": false,
      "MouseEnabled": false,
      "InteractionMode": 0
    },
    "Orientations": {
      "Version": "1.0.0",
      "Transverse": {
        "Version": "1.0.0",
        "View": 0,
        "VerticalFlip": false,
        "HorizontalFlip": false,
        "Rotation": 0,
        "Slice": 0
      },
      "Sagittal": {
        "Version": "1.0.0",
        "View": 0,
        "VerticalFlip": false,
        "HorizontalFlip": false,
        "Rotation": 0,
        "Slice": 0
      },
      "Coronal": {
        "Version": "1.0.0",
        "View": 0,
        "VerticalFlip": false,
        "HorizontalFlip": false,
        "Rotation": 0,
        "Slice": 0
      }
    },
    "Layout": {
      "Version": "0.0.1",
      "SwitchOnViewChange": false,
      "PositionData": [
        {
          "Version": null,
          "ActiveView": false,
          "DefaultView": 0,
          "Anchor": 0,
          "Offset": {
            "Version": "1.0.0",
            "X": 0,
            "Y": 0
          },
          "AspectRatio": 0,
          "MaxSize": {
            "Version": "1.0.0",
            "X": 0,
            "Y": 0
          },
          "Priority": 0
        }
      ]
    },
    "Colour": {
      "Version": "0.0.1",
      "Name": "Some Colour Preset",
      "ColourGradient": [
        {
          "Version": "1.0.0",
          "R": 255,
          "G": 255,
          "B": 255,
          "Time": 2
        }
      ],
      "AlphaGradient": [
        {
          "Version": "1.0.0",
          "Alpha": 1,
          "Time": 2
        }
      ]
    },
    "NavigationCube": {
      "Version": "1.0.0",
      "Transform": {
        "Version": "1.0.0",
        "AnchorPoint": 0,
        "Position": {
          "Version": "1.0.0",
          "X": 0,
          "Y": 0
        },
        "Size": {
          "Version": "1.0.0",
          "X": 0,
          "Y": 0
        }
      },
      "Visibility": {
        "Version": "0.0.1",
        "Value": true
      },
      "Interactivity": {
        "Version": "0.0.1",
        "Value": true
      }
    }
  },
  "GreyscalePresets": [
    {
      "Version": "0.0.1",
      "Name": "Preset",
      "Lower": 1,
      "Upper": 2
    }
  ],
  "ColourPresets": [
    {
      "Version": "0.0.1",
      "Name": "Some Colour Preset",
      "ColourGradient": [
        {
          "Version": "1.0.0",
          "R": 255,
          "G": 255,
          "B": 255,
          "Time": 2
        }
      ],
      "AlphaGradient": [
        {
          "Version": "1.0.0",
          "Alpha": 1,
          "Time": 2
        }
      ]
    }
  ]
}

Response Codes

CodeDescription
S00000Action was received from Front End.
S00001Action from Front End has completed.
F00000Error executing the supplied function
F00001Function is not defined
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
A00001Input value exceeded limits defined

FM_03: Load Current Scan State from Previous Session

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_03

Payload Definition

Type: EmptyPayload
{
  "Version": "String"
}

Example definition

Type: EmptyPayload
{
  "Version": "0.0.1"
}

Response Codes

CodeDescription
S00000Action was received from Front End.
S00001Action from Front End has completed.
F00000Error executing the supplied function
F00001Function is not defined
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
A00001Input value exceeded limits defined

FM_04: Local File Path for Loading of a 3VXL File

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_04

Payload Definition

Type: LocalLoadDataset
{
  "Path": "String"
}

Example definition

Type: LocalLoadDataset
{
  "Path": "C:/somefile"
}

Response Codes

CodeDescription
S00000Action was received from Front End.
S00001Action from Front End has completed.
F00000Error executing the supplied function
F00001Function is not defined
F00002Input data is not valid for function
F00003Unable to load scan. File could not be located.
F00004Unable to load scan due to its dimensions exceeding 2048 pixels.
F00005Unable to load scan. File not supported.
F00006Action did not execute within an allotted time
F00007Unable to load scan. File is too large.
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access scan file to read.
F00013Pixel spacing in given scan file is invalid.
A00001Input value exceeded limits defined
Last Updated:
Contributors: Elliott Cooper