SOLA
Loading...
Searching...
No Matches
amr_order_info.h
1// Copyright 2023 The SOLA authors
2//
3// This file is part of DAISI.
4//
5// DAISI is free software: you can redistribute it and/or modify it under the terms of the GNU
6// General Public License as published by the Free Software Foundation; version 2.
7//
8// DAISI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
9// the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
10// Public License for more details.
11//
12// You should have received a copy of the GNU General Public License along with DAISI. If not, see
13// <https://www.gnu.org/licenses/>.
14//
15// SPDX-License-Identifier: GPL-2.0-only
16
17#ifndef DAISI_CPPS_AMR_MESSAGE_AMR_ORDER_INFO_H_
18#define DAISI_CPPS_AMR_MESSAGE_AMR_ORDER_INFO_H_
19
20#include "cpps/amr/model/amr_static_ability.h"
21#include "cpps/amr/physical/functionality.h"
22#include "cpps/model/order_states.h"
23#include "solanet/serializer/serialize.h"
24#include "utils/structure_helpers.h"
25
26namespace daisi::cpps {
28public:
29 AmrOrderInfo() = default;
30 AmrOrderInfo(std::vector<FunctionalityVariant> functionalities,
31 const amr::AmrStaticAbility &ability_requirement)
32 : functionalities_(std::move(functionalities)), ability_requirement_(ability_requirement) {}
33
34 std::vector<FunctionalityVariant> getFunctionalities() const { return functionalities_; }
35 amr::AmrStaticAbility getAbilityRequirement() const { return ability_requirement_; }
36 SERIALIZE(functionalities_, ability_requirement_);
37
38private:
39 std::vector<FunctionalityVariant> functionalities_;
40 amr::AmrStaticAbility ability_requirement_;
41};
42} // namespace daisi::cpps
43
44#endif
Definition amr_order_info.h:27
Definition amr_static_ability.h:32