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 resource. 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 resource. File is too large.
F00008Function is not found
F00009Unable to connect to server to fetch resource.
F00011The payload supplied is invalid
F00012Unable to access 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",
  "XSpacing": "Float",
  "YSpacing": "Float",
  "ZSpacing": "Float",
  "Modality": "String",
  "HuUpper": "Int32",
  "HuLower": "Int32",
  "Tilt": "Float",
  "ImageOrientationX": {
    "Version": "String",
    "X": "Float",
    "Y": "Float",
    "Z": "Float"
  },
  "ImageOrientationY": {
    "Version": "String",
    "X": "Float",
    "Y": "Float",
    "Z": "Float"
  },
  "ImageOrigin": {
    "Version": "String",
    "X": "Float",
    "Y": "Float",
    "Z": "Float"
  },
  "ImageDirectionX": {
    "Version": "String",
    "X": "Float",
    "Y": "Float",
    "Z": "Float"
  },
  "ImageDirectionY": {
    "Version": "String",
    "X": "Float",
    "Y": "Float",
    "Z": "Float"
  },
  "ImageDirectionZ": {
    "Version": "String",
    "X": "Float",
    "Y": "Float",
    "Z": "Float"
  },
  "PatientPosition": "ENUM: PatientPosition",
  "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",
        "VerticalFlip": "Boolean",
        "HorizontalFlip": "Boolean",
        "Rotation": "Float",
        "Visibility": "Boolean",
        "Slice": "Float"
      },
      "Sagittal": {
        "Version": "String",
        "VerticalFlip": "Boolean",
        "HorizontalFlip": "Boolean",
        "Rotation": "Float",
        "Visibility": "Boolean",
        "Slice": "Float"
      },
      "Coronal": {
        "Version": "String",
        "VerticalFlip": "Boolean",
        "HorizontalFlip": "Boolean",
        "Rotation": "Float",
        "Visibility": "Boolean",
        "Slice": "Float"
      },
      "Volume": {
        "Version": "String",
        "Visibility": "Boolean",
        "Inverted": {
          "Version": "String",
          "InvertedSagittal": "Boolean",
          "InvertedCoronal": "Boolean",
          "InvertedTransverse": "Boolean"
        }
      }
    },
    "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"
      },
      "Colour": {
        "Version": "String",
        "R": "Float",
        "G": "Float",
        "B": "Float",
        "A": "Float"
      },
      "HighlightColour": {
        "Version": "String",
        "R": "Float",
        "G": "Float",
        "B": "Float",
        "A": "Float"
      },
      "NavCubeGraphicType": "ENUM: GraphicType"
    },
    "ScanMovement": {
      "Version": "String"
    }
  },
  "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,
  "XSpacing": 0,
  "YSpacing": 0,
  "ZSpacing": 0,
  "Modality": "CT",
  "HuUpper": 0,
  "HuLower": 0,
  "Tilt": 0,
  "ImageOrientationX": null,
  "ImageOrientationY": null,
  "ImageOrigin": null,
  "ImageDirectionX": null,
  "ImageDirectionY": null,
  "ImageDirectionZ": null,
  "PatientPosition": 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",
        "VerticalFlip": false,
        "HorizontalFlip": false,
        "Rotation": 0,
        "Visibility": true,
        "Slice": 0
      },
      "Sagittal": {
        "Version": "1.0.0",
        "VerticalFlip": false,
        "HorizontalFlip": false,
        "Rotation": 0,
        "Visibility": true,
        "Slice": 0
      },
      "Coronal": {
        "Version": "1.0.0",
        "VerticalFlip": false,
        "HorizontalFlip": false,
        "Rotation": 0,
        "Visibility": true,
        "Slice": 0
      },
      "Volume": {
        "Version": "1.1.0",
        "Visibility": true,
        "Inverted": {
          "Version": "1.1.0",
          "InvertedSagittal": true,
          "InvertedCoronal": true,
          "InvertedTransverse": true
        }
      }
    },
    "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.2.1",
      "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
      },
      "Colour": {
        "Version": "1.1.0",
        "R": 0,
        "G": 0,
        "B": 0,
        "A": 0
      },
      "HighlightColour": {
        "Version": "1.1.0",
        "R": 0,
        "G": 0,
        "B": 0,
        "A": 0
      },
      "NavCubeGraphicType": 0
    },
    "ScanMovement": {
      "Volume": {
        "Version": "1.1.0",
        "VolumeRotation": {
          "Version": "1.1.0",
          "X": 0,
          "Y": 0,
          "Z": 0
        },
        "CameraRotation": {
          "Version": "1.1.0",
          "X": 0,
          "Y": 0,
          "Z": 0
        },
        "Pan": {
          "Version": "1.0.0",
          "X": 0,
          "Y": 0
        },
        "Zoom": 1
      },
      "Transverse": {
        "Version": "1.1.0",
        "Pan": {
          "Version": "1.0.0",
          "X": 0,
          "Y": 0
        },
        "Zoom": 1
      },
      "Sagittal": {
        "Version": "1.1.0",
        "Pan": {
          "Version": "1.0.0",
          "X": 0,
          "Y": 0
        },
        "Zoom": 1
      },
      "Coronal": {
        "Version": "1.1.0",
        "Pan": {
          "Version": "1.0.0",
          "X": 0,
          "Y": 0
        },
        "Zoom": 1
      },
      "Version": "1.0.0"
    }
  },
  "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: LoadSessionState
{
  "Version": "String",
  "Url": "String"
}

Example definition

Type: LoadSessionState
{
  "Url": "https://google.com/somepayload.3vxl",
  "DecryptionKey": null
}

Response Codes

CodeDescription
S00000Action was received from Front End.
S00001Action from Front End has completed.
F00000Error executing the supplied function
F00001Function is not defined
F00003Unable to load resource. File could not be located.
F00006Action did not execute within an allotted time
F00007Unable to load resource. File is too large.
F00008Function is not found
F00009Unable to connect to server to fetch resource.
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
A00001Input value exceeded limits defined
I00003Missing fields were replaced with default values. {INPUTS}

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 resource. 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 resource. File is too large.
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00013Pixel spacing in given scan file is invalid.
F00026Resource given for {RESOURCE} was not able to be loaded.

FM_05: Load Seperate Data Overlay File from External UI

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_05

Payload Definition

Type: LoadSessionState
{
  "Version": "String",
  "Url": "String"
}

Example definition

Type: LoadSessionState
{
  "Url": "https://google.com/somepayload.3vxl",
  "DecryptionKey": null
}

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00007Unable to load resource. File is too large.
F00008Function is not found
F00009Unable to connect to server to fetch resource.
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
A00003Object with Id, {ID}, is already in session. Given Object was not imported.
A00004Element was invalid for function. Element will be skipped.
I00003Missing fields were replaced with default values. {INPUTS}

FM_06: Local File Path for Loading of a Seperate Data Overlay File

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_06

Payload Definition

Type: LoadSessionState
{
  "Version": "String",
  "Url": "String"
}

Example definition

Type: LoadSessionState
{
  "Url": "https://google.com/somepayload.3vxl",
  "DecryptionKey": null
}

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00007Unable to load resource. File is too large.
F00008Function is not found
F00009Unable to connect to server to fetch resource.
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
A00003Object with Id, {ID}, is already in session. Given Object was not imported.
A00004Element was invalid for function. Element will be skipped.
I00003Missing fields were replaced with default values. {INPUTS}

FM_07: Receives file path from external UI for MCAD Object(s) and reads meta-data of each object

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_07

Payload Definition

Type: LoadFileData
{
  "Url": "String",
  "Key": "String"
}

Example definition

Type: LoadFileData
{
  "Url": "https://google.com/somepayload.3vxl",
  "Key": "someUniqueKey"
}

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
I00003Missing fields were replaced with default values. {INPUTS}

FM_08: Local File Path for Loading of MCAD Object(s)

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_08

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
I00003Missing fields were replaced with default values. {INPUTS}

FM_09: Load Seperate MCAD Data File from External UI

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_09

Payload Definition

Type: LoadSessionState
{
  "Version": "String",
  "Url": "String"
}

Example definition

Type: LoadSessionState
{
  "Url": "https://google.com/somepayload.3vxl",
  "DecryptionKey": null
}

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
F00031Return channel Id, {ID}, could not be found.
I00003Missing fields were replaced with default values. {INPUTS}

FM_10: Local File Path for Loading of a Seperate MCAD Data File

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_10

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
F00031Return channel Id, {ID}, could not be found.
I00003Missing fields were replaced with default values. {INPUTS}

FM_12: Load Current Scan State from Previous Session from Local File Path

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_12

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
F00003Unable to load resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
A00001Input value exceeded limits defined
I00003Missing fields were replaced with default values. {INPUTS}

FM_13: Load Seperate Data Overlay File from External UI from Local File Path

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_13

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
A00003Object with Id, {ID}, is already in session. Given Object was not imported.
A00004Element was invalid for function. Element will be skipped.
I00003Missing fields were replaced with default values. {INPUTS}

FM_14: Local File Path for Loading of a Seperate Data Overlay File from Local File Path

  • Version: 1.0.0
  • Interface: file_management
  • Action: fm_14

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 resource. File could not be located.
F00006Action did not execute within an allotted time
F00008Function is not found
F00011The payload supplied is invalid
F00012Unable to access file to read.
F00026Resource given for {RESOURCE} was not able to be loaded.
F00028This function requires a scan to be loaded.
A00003Object with Id, {ID}, is already in session. Given Object was not imported.
A00004Element was invalid for function. Element will be skipped.
I00003Missing fields were replaced with default values. {INPUTS}
Last Updated:
Contributors: Elliott Cooper, Matthew Satti