User Tools

Site Tools


planning:userguide:results_api_functions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
planning:userguide:results_api_functions [2017/07/18 14:59] dpatenaudeplanning:userguide:results_api_functions [2021/07/29 18:24] (current) – external edit 127.0.0.1
Line 10: Line 10:
  
 <code c++> <code c++>
 +
 +// PLAN RESULTS API
  
 // Some general notes about the API... // Some general notes about the API...
Line 57: Line 59:
 { {
     value internal_id;     value internal_id;
 +    // stringified version of the internal id
 +    string id;
 +    // display label of the structure
     styled_text label;     styled_text label;
     rgb8 color;     rgb8 color;
Line 100: Line 105:
  
     styled_text isocenter;     styled_text isocenter;
 +    styled_text geometric_target_label;
     styled_text spot_target_label;     styled_text spot_target_label;
  
Line 115: Line 121:
     // list of degraders for this beam     // list of degraders for this beam
     std::vector<degrader_summary> degraders;     std::vector<degrader_summary> degraders;
 +};
 +
 +api(struct)
 +struct course_summary
 +{
 +    markup_document report;
 +    styled_text label;
 +};
 +
 +api(struct)
 +struct intent_summary
 +{
 +    // a report about what the plan was intended to accomplish
 +    // (e.g., prescription, goals, etc.)
 +    markup_document report;
 +    // Name of the patient external structure (from the disease site template)
 +    string patient_structure_name;
 +    // Name of the treatment_site
 +    string treatment_site;
 +};
 +
 +api(struct)
 +struct patient_model_summary
 +{
 +    markup_document report;
 +    styled_text label;
 }; };
  
Line 184: Line 216:
 { {
     bool intelligent_stopping_solver;     bool intelligent_stopping_solver;
-    int solver_iterations;+    unsigned solver_iterations;
     bool intelligent_stopping_optimizer;     bool intelligent_stopping_optimizer;
-    int optimizer_iterations;+    unsigned optimizer_iterations
 +}; 
 + 
 +api(struct) 
 +struct dicom_summary 
 +
 +    string study_instance_uid; 
 +    string study_description; 
 +    string study_id; 
 +    string series_instance_uid; 
 +    string series_description; 
 +    string ref_structure_set_uid; 
 +}; 
 + 
 +api(struct) 
 +struct rsp_image_summary 
 +
 +    markup_document report; 
 +    string rsp_image_id;
 }; };
  
Line 192: Line 242:
 struct plan_summary struct plan_summary
 { {
 +    // A summary of the DICOM study/series information
 +    dicom_summary dcm_summary;
 +
     // the treatment plan name     // the treatment plan name
     styled_text label;     styled_text label;
 +
 +    // the plan description
 +    styled_text description;
  
     // the patient information     // the patient information
Line 202: Line 258:
     patient_position_type patient_position;     patient_position_type patient_position;
  
-    // a report about what the plan was intended to accomplish +    // info from the course level 
-    // (e.g., prescription, goals, etc.) +    course_summary course_info; 
-    markup_document intent_report;+ 
 +    // info from the intent level 
 +    intent_summary intent_info; 
 + 
 +    // info from the patient model level 
 +    patient_model_summary patient_model_info;
  
     // a summary about the CT image associated with the treatment plan     // a summary about the CT image associated with the treatment plan
Line 213: Line 274:
     markup_document creation_report;     markup_document creation_report;
  
-    // a report about the RSP image associated with the treatment plan +    // a summary about the RSP image associated with the treatment plan 
-    markup_document rsp_image_report;+    rsp_image_summary rsp_image_info;
  
     // a report about the calculation grid used in creating the treatment plan     // a report about the calculation grid used in creating the treatment plan
Line 257: Line 318:
  
 <code c++> <code c++>
 +
 +// Generate the request for the site_info used for constructing the treatment plan.
 +api(fun)
 +calculation_request
 +generate_site_info_request(treatment_plan const& plan);
 +
 +// Generate the request for the dicom rt_ion_plan for a treatment_plan
 +api(fun)
 +calculation_request
 +generate_rt_ion_plan_request(
 +    treatment_plan const& plan,
 +    rt_approval const& approval,
 +    rt_tolerance_table const& tol_table,
 +    rt_patient_setup const& patient_setup,
 +    std::vector<rt_dose_reference> const& prescription_data,
 +    unsigned fraction_cycle_length,
 +    unsigned fractions_per_day,
 +    string const& fraction_pattern);
  
 // Generate the request for the summary info for a plan. // Generate the request for the summary info for a plan.
Line 271: Line 350:
 // Generate the request for the RSP image used for constructing a plan. // Generate the request for the RSP image used for constructing a plan.
 // The spatial coordinate system is that of the CT image. // The spatial coordinate system is that of the CT image.
 +// TODO: This currently returns the merged EPF image because we don't actually
 +// construct the sliced one as an intermediate step, which is also incorrect.
 +// Once that's fixed, this should return the sliced EPF.
 api(fun) api(fun)
 calculation_request calculation_request
Line 373: Line 455:
 // //
 // If the specified beam has no aperture, this is an error. // If the specified beam has no aperture, this is an error.
-// 
 api(fun) api(fun)
 calculation_request calculation_request
Line 390: Line 471:
 // //
 // If the specified beam has no aperture, this is an error. // If the specified beam has no aperture, this is an error.
-// 
 api(fun) api(fun)
 calculation_request calculation_request
Line 417: Line 497:
 // space with its downstream edge at the isocentric plane. // space with its downstream edge at the isocentric plane.
 // //
 +/// TODO: Again, I'm not sure that this should really be a separate request.
 +///
 api(fun) api(fun)
 calculation_request calculation_request
Line 443: Line 525:
     size_t fraction_group_index,     size_t fraction_group_index,
     size_t beam_index);     size_t beam_index);
- 
  
 </code> </code>
  
planning/userguide/results_api_functions.1500389946.txt.gz · Last modified: 2021/07/29 18:22 (external edit)