File: Selector.cpp

package info (click to toggle)
odil 0.13.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,476 kB
  • sloc: cpp: 55,982; python: 3,947; javascript: 460; xml: 182; makefile: 99; sh: 36
file content (45 lines) | stat: -rw-r--r-- 2,060 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/*************************************************************************
 * odil - Copyright (C) Universite de Strasbourg
 * Distributed under the terms of the CeCILL-B license, as published by
 * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
 * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
 * for details.
 ************************************************************************/

#include <pybind11/pybind11.h>
#include <pybind11/operators.h>
#include <pybind11/stl.h>

#include "odil/webservices/HTTPRequest.h"
#include "odil/webservices/WADORSRequest.h"

void wrap_webservices_Selector(pybind11::module & m)
{
    using namespace pybind11;
    using namespace odil::webservices;

    class_<Selector>(m, "Selector")
        .def(
            init<std::map<std::string, std::string>, std::vector<int>>(),
            "",
            arg("selector") = std::map<std::string, std::string>(),
            arg("frames")=std::vector<int>())
        //"selector : {\"studies\" : \"StudiesInstanceUID\", \"series\" : \"SeriesInstanceUID\", \"instances\" : \"SOPInstanceUID\"} "))
        .def("get_path", &Selector::get_path)
        .def("is_study_present", &Selector::is_study_present)
        .def("is_series_present", &Selector::is_series_present)
        .def("is_instance_present", &Selector::is_instance_present)
        .def("get_study", &Selector::get_study, return_value_policy::copy)
        .def("get_series", &Selector::get_series, return_value_policy::copy)
        .def("get_instance", &Selector::get_instance, return_value_policy::copy)
        .def("get_frames", &Selector::get_frames, return_value_policy::copy)
        .def("set_study", &Selector::set_study, return_value_policy::copy)
        .def("set_series", &Selector::set_series, return_value_policy::copy)
        .def("set_instance", &Selector::set_instance, return_value_policy::copy)
        .def(
            "set_frames", &Selector::set_frames,
            return_value_policy::reference_internal)
        .def(self == self)
        .def(self != self)
    ;
}