/* Copyright (C) 2014-2022 FastoGT. All right reserved. This file is part of fastocloud. fastocloud is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. fastocloud is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with fastocloud. If not, see . */ #pragma once #include #include "base/stream_config.h" namespace fastocloud { namespace server { namespace stream { class StartInfo : public common::serializer::JsonSerializer { public: typedef common::serializer::JsonSerializer base_class; typedef StreamConfig config_t; StartInfo(); explicit StartInfo(const config_t& config); config_t GetConfig() const; protected: common::Error DoDeSerialize(json_object* serialized) override; common::Error SerializeFields(json_object* out) const override; private: config_t config_; }; } // namespace stream } // namespace server } // namespace fastocloud