Skip to content

Logo Logo

Creating a Viewer Protocol

Introduction

This document will demonstrate how to create a Viewer Protocol. A user can create, modify, and delete a Viewer Protocol by going to the Projects Settings page in the Flywheel Project. Please visit the Introduction to Reader Tasks.

Constraints

Note: Tasks are currently behind a feature flag. If you are interested in hearing more about Tasks and how to get it turned on at your site, please contact you Flywheel Representative or submit a Ticket Request.

Instruction Steps

A Viewer Protocol defines the specific image interpretation workflow you would like performed. Along with other pertinent features about a task such as the task type, image container, assignee, creator, created data, and due date the task list also displays which viewer protocol was assigned to the task.

image1.png

The Viewer Protocol name is also listed in the task Review Drawer. One can hover over the Read Protocol to view the Protocol Name and a short description. Below is a view of a Review Drawer.

image2.png

CREATING A NEW TASK

When creating a new task, the first step is to select the read protocol you want performed on the images. One may have multiple protocols defined across the project and site.

Now select the New Task blue button on the right-hand side.

image3.png

It will then open to a Create Tasks Form as shown in the image below that will need to be populated.

image4.png

Select the Task Type and then the Read Protocol desired.

image5.png

VIEWER PROTOCOLS

To display the existing Viewer Protocols in a project, begin by navigating to the Settings page located in the triple ellipses menu. Then select the Viewer Protocols at the bottom of the left-hand tab as shown below.

image6.png

Once selected, the Viewer Protocol page should display. A User will manage all protocols saved and created in the current project. Additionally, on this page there are several columns of information to assist in determining the protocol, its description, creator, and the date the protocol was last modified.

image7.png

MANAGING VIEWER PROTOCOLS - OPTIONS

If you are not creating a new viewer protocol, you have the option to select the triple ellipsis to the far right for options on any protocol that is listed. One may edit, duplicate, or delete a protocol from the Viewer Protocol list.

image8.png

If you select Duplicate, within seconds a copy will display in the Viewer Protocols list. This is useful if you want to leverage an existing protocol as a starting point for a new protocol. If the selection is to delete a Protocol, then the interface will prompt the user with a confirmation to ensure this is what the user intends as seen below.

image9.png

If there are tasks that have not been completed yet and are assigned to the protocol being deleted, the user will be prompted to delete the incomplete tasks along with the protocol or cancel the action.

image10.png

CREATING A NEW VIEWER PROTOCOL

To create a new Viewer Protocol directly in the User Interface (UI), follow the instructions below:

  1. Select Create a New Viewer Protocol

image11.png

  1. Now begin to populate the Create a New Viewer Protocol Form by entering a Protocol Name and Description. Of special note, both fields are required.

image12.png

Note: There are JSON files that are driving the definition of the viewer form which are the questions that should up in the right-hand panel that walk the user through the workflow and general viewer configurations.

If one has one from another project or if you have a JSON file already on your desktop, then you can upload it.

  1. Next select from the options on the Viewer Form as shown below.

    • Open Empty JSON Editor
    • Upload JSON Editor
  2. elect from the Viewer Configuration as shown below.

    • Open Empty JSON Editor
    • Upload JSON Editor

image13.png

  1. Once all the selections needed have been made, select Save at the bottom right hand of the screen.

image14.png

  1. The newly created Viewer Protocol will display in the Viewer Protocol list page and can be used to create a new task.

Example Templates

Viewer Form File

This is an example template for the viewer form file:

{ 

    "studyForm": { 

        "components": [ 

            { 

                "label": "Example radio question - multiple options single choice.", 

                "key": "ex_radio", 

                "type": "radio", 

                "values": [ 

                    { 

                        "value": "yes", 

                        "label": "Yes" 

                    }, 

                    { 

                        "value": "no", 

                        "label": "No" 

                    }, 

                    { 

                        "value": "maybe", 

                        "label": "Maybe" 

                    } 

                ] 

            }, 

            { 

                "label": "Example dropdown question - multiple options single choice.", 

                "key": "ex_dropdown", 

                "type": "dropdown", 

                "values": [ 

                    { 

                        "value": "yes", 

                        "label": "Yes" 

                    }, 

                    { 

                        "value": "no", 

                        "label": "No" 

                    }, 

                    { 

                        "value": "maybe", 

                        "label": "Maybe" 

                    }, 

                    { 

                        "value": "maybe_not", 

                        "label": "Maybe Not" 

                    }, 

                    { 

                        "value": "possible", 

                        "label": "Possible" 

                    }, 

                    { 

                        "value": "unlikely", 

                        "label": "Unlikely" 

                    }, 

                    { 

                        "value": "hardtotell", 

                        "label": "Hard to Tell" 

                    } 

                ] 

            }, 

            { 

                "label": "Example select boxes question - multiple options multiple choice.", 

                "key": "ex_select", 

                "type": "selectboxes", 

                "values": [ 

                    { 

                        "value": "f1", 

                        "label": "Finding 1" 

                    }, 

                    { 

                        "value": "f2", 

                        "label": "Finding 2" 

                    }, 

                    { 

                        "value": "f3", 

                        "label": "Finding 3" 

                    }, 

                    { 

                        "value": "other", 

                        "label": "Other" 

                    } 

                ] 

            }, 

            { 

                "label": "Example long text entry", 

                "key": "ex_long_text", 

                "type": "textarea" 

            }, 

            { 

                "label": "Example short text entry", 

                "key": "ex_short_text", 

                "type": "textfield" 

            } 

        ] 

    } 

}

Configuration File

This is an example template that can be used as a starting point for the configuration file.

{ 

    "showStudyList": true, 

    "contourUnique": false, 

    "allowDraft": true, 

    "automatedLabelling": true, 

    "hideFreehandVertex": true, 

    "hideROIOutput": true, 

    "hideMeasurementOutput": true, 

    "defaultCircleDiameter": 10, 

    "enableSegmentationPanel": true, 

    "timerOn": true, 

    "timerVisible": false, 

    "useRadiologyOrientationForNiftiOverDicomOverlay": true, 

    "mouseActions": [ 

        { 

            "toolName": "Zoom", 

            "button": "middle" 

        }, 

        { 

            "toolName": "Pan", 

            "button": "right" 

        }, 

        { 

            "toolName": "Wwwc", 

            "button": "left" 

        }, 

        { 

            "toolName": "StackScrollMouseWheel", 

            "button": "wheel" 

        } 

    ], 

    "labels": [ 

        { 

            "label": "Target Lesion 1", 

            "value": "TL1", 

            "color": "rgba(245, 40, 145, 0.99)" 

        }, 

        { 

            "label": "Target Lesion 2", 

            "value": "TL2", 

            "color": "rgba(50, 245, 39, 0.99)" 

        }, 

        { 

            "label": "Non-Target Lesion", 

            "value": "NTL", 

            "color": "rgba(253, 248, 0, 0.7)" 

        }, 

        { 

            "label": "Finding", 

            "value": "Finding", 

            "color": "rgba(253, 248, 0, 0.7)" 

        } 

    ], 

    "smartCTRanges": [ 

        { 

            "label": "Lung", 

            "range": { 

                "min": -700, 

                "max": -600 

            }, 

            "color": [ 

                0, 

                79, 

                253, 

                0.5 

            ], 

            "description": "" 

        }, 

        { 

            "label": "Tumor", 

            "range": { 

                "min": -10, 

                "max": 50 

            }, 

            "color": [ 

                253, 

                47, 

                0, 

                0.6 

            ], 

            "description": "" 

        }, 

        { 

            "label": "Malignant Lymphnode", 

            "range": { 

                "min": -10, 

                "max": 50 

            }, 

            "color": [ 

                253, 

                158, 

                0, 

                0.6 

            ], 

            "description": "" 

        } 

    ] 

}