1 /** 2 * Orthanc - A Lightweight, RESTful DICOM Store 3 * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics 4 * Department, University Hospital of Liege, Belgium 5 * Copyright (C) 2017-2021 Osimis S.A., Belgium 6 * 7 * This program is free software: you can redistribute it and/or 8 * modify it under the terms of the GNU Lesser General Public License 9 * as published by the Free Software Foundation, either version 3 of 10 * the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, but 13 * WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this program. If not, see 19 * <http://www.gnu.org/licenses/>. 20 **/ 21 22 23 #pragma once 24 25 #include "IJobUnserializer.h" 26 27 #include "../Compatibility.h" // For ORTHANC_OVERRIDE 28 29 namespace Orthanc 30 { 31 class ORTHANC_PUBLIC GenericJobUnserializer : public IJobUnserializer 32 { 33 public: 34 virtual IJob* UnserializeJob(const Json::Value& value) ORTHANC_OVERRIDE; 35 36 virtual IJobOperation* UnserializeOperation(const Json::Value& value) ORTHANC_OVERRIDE; 37 38 virtual IJobOperationValue* UnserializeValue(const Json::Value& value) ORTHANC_OVERRIDE; 39 }; 40 } 41