Skip to content

Dicom Study

DicomStudy is a class representing a group of DicomSeries objects within the same study. It contains information including patient details, modality, and file location(s).

Type

All types only contain a single parameter, the UUID of the underlying OsiriX object.

types.proto (lines 37-39)
message DicomStudy{
    string osirixrpc_uid = 1;
}

Methods

By convention, any method defined with syntax

rpc DicomStudyXyz (DicomStudy) returns (DicomStudyXyzResponse) {}
is called in Python (for example) using syntax
response = osirix_stub.DicomStudyXyz(request) # (1)

  1. response is a DicomStudyXyzResponse class, and request a DicomStudy class.
osirix.proto (lines 161-180)
rpc DicomStudyPaths (DicomStudy) returns (DicomStudyPathsResponse) {}
rpc DicomStudyImages (DicomStudy) returns (DicomStudyImagesResponse) {}
rpc DicomStudyModalities (DicomStudy) returns (DicomStudyModalitiesResponse) {}
rpc DicomStudyNoFiles (DicomStudy) returns (DicomStudyNoFilesResponse) {}
rpc DicomStudyRawNoFiles (DicomStudy) returns (DicomStudyRawNoFilesResponse) {}
rpc DicomStudyNumberOfImages (DicomStudy) returns (DicomStudyNumberOfImagesResponse) {}
rpc DicomStudySeries (DicomStudy) returns (DicomStudySeriesResponse) {}
rpc DicomStudyName (DicomStudy) returns (DicomStudyNameResponse) {}
rpc DicomStudyDate (DicomStudy) returns (DicomStudyDateResponse) {}
rpc DicomStudyDateAdded (DicomStudy) returns (DicomStudyDateAddedResponse) {}
rpc DicomStudyDateOfBirth (DicomStudy) returns (DicomStudyDateOfBirthResponse) {}
rpc DicomStudyInstitutionName (DicomStudy) returns (DicomStudyInstitutionNameResponse) {}
rpc DicomStudyModality (DicomStudy) returns (DicomStudyModalityResponse) {}
rpc DicomStudyPatientID (DicomStudy) returns (DicomStudyPatientIDResponse) {}
rpc DicomStudyPatientUID (DicomStudy) returns (DicomStudyPatientUIDResponse) {}
rpc DicomStudyPatientSex (DicomStudy) returns (DicomStudyPatientSexResponse) {}
rpc DicomStudyPerformingPhysician (DicomStudy) returns (DicomStudyPerformingPhysicianResponse) {}
rpc DicomStudyReferringPhysician (DicomStudy) returns (DicomStudyReferringPhysicianResponse) {}
rpc DicomStudyStudyInstanceUID (DicomStudy) returns (DicomStudyStudyInstanceUIDResponse) {}
rpc DicomStudyStudyName (DicomStudy) returns (DicomStudyStudyNameResponse) {}

Responses

By convention, any response defined with syntax

message DicomStudyXyzResponse{
    type_1 arg_1 = 1;
    type_2 arg_2 = 2; // (1)
    ...
}

  1. The numbers on the RHS should be ignored. They are necessary only for protobuf file definitions.

has attributes accessed in Python (for example) using syntax

x1 = response.arg1
x2 = response.arg2
...

dicomstudy.proto (lines 9-)
message DicomStudyPathsResponse{
    Status status = 1;
    repeated string paths = 2;
}

message DicomStudyImagesResponse{
    Status status = 1;
    repeated DicomImage images = 2;
}

message DicomStudyModalitiesResponse{
    Status status = 1;
    string modalities = 2;
}

message DicomStudyNoFilesResponse{
    Status status = 1;
    int32 no_files = 2;
}

message DicomStudyRawNoFilesResponse{
    Status status = 1;
    int32 no_files = 2;
}

message DicomStudyNumberOfImagesResponse{
    Status status = 1;
    int32 no_images = 2;
}

message DicomStudySeriesResponse{
    Status status = 1;
    repeated DicomSeries series = 2;
}

message DicomStudyNameResponse{
    Status status = 1;
    string name = 2;
}

message DicomStudyDateResponse{
    Status status = 1;
    int32 year = 2;
    int32 month = 3;
    int32 day = 4;
    int32 hour = 5;
    int32 minute = 6;
    int32 second = 7;
    int32 millisecond = 8;
}

message DicomStudyDateAddedResponse{
    Status status = 1;
    int32 year = 2;
    int32 month = 3;
    int32 day = 4;
    int32 hour = 5;
    int32 minute = 6;
    int32 second = 7;
    int32 millisecond = 8;
}

message DicomStudyDateOfBirthResponse{
    Status status = 1;
    int32 year = 2;
    int32 month = 3;
    int32 day = 4;
}

message DicomStudyInstitutionNameResponse{
    Status status = 1;
    string institution_name = 2;
}

message DicomStudyModalityResponse{
    Status status = 1;
    string modality = 2;
}

message DicomStudyPatientIDResponse{
    Status status = 1;
    string patient_id = 2;
}

message DicomStudyPatientUIDResponse{
    Status status = 1;
    string patient_uid = 2;
}

message DicomStudyPatientSexResponse{
    Status status = 1;
    string patient_sex = 2;
}

message DicomStudyPerformingPhysicianResponse{
    Status status = 1;
    string performing_physician = 2;
}

message DicomStudyReferringPhysicianResponse{
    Status status = 1;
    string referring_physician = 2;
}

message DicomStudyStudyInstanceUIDResponse{
    Status status = 1;
    string study_instance_uid = 2;
}

message DicomStudyStudyNameResponse{
    Status status = 1;
    string study_name = 2;
}

Requests

No specialized requests available for this class (class is immutable).