World Ocean Simulation System (WOSS) library
uw-woss-clmsg-channel-estimation.h
Go to the documentation of this file.
1/* WOSS - World Ocean Simulation System -
2 *
3 * Copyright (C) 2009 2025 Federico Guerra
4 * and regents of the SIGNET lab, University of Padova
5 *
6 * Author: Federico Guerra - WOSS@guerra-tlc.com
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation;
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 */
21
22
33#ifndef UW_WOSS_CLMSG_CHANNEL_ESTIMATION_H
34#define UW_WOSS_CLMSG_CHANNEL_ESTIMATION_H
35
36#include <memory>
37#include <clmessage.h>
39
40
41static constexpr inline int CLMSG_CH_ESTIMATION_VERBOSITY = 2; // verbosity of this message
42
43
44extern ClMessage_t CLMSG_CHANNEL_ESTIMATION;
45
52class ClMsgChannelEstimation : public ClMessage {
53
54 public:
55
56 ClMsgChannelEstimation( int i, int j, std::unique_ptr<woss::TimeArr> time_arr = nullptr );
57
58 virtual ~ClMsgChannelEstimation() override = default;
59
60 virtual ClMessage* copy() override; // copy the message
61
62
63 int getTx() const { return tx; }
64
65 int getRx() const { return rx; }
66
67
68 void setTimeArr( std::unique_ptr<woss::TimeArr> time_arr ) { ch_estimation = std::move(time_arr); }
69
70 std::unique_ptr<woss::TimeArr> getTimeArr() { return std::move(ch_estimation); }
71
72
73 bool isQuery() const {return query; }
74
75
76 protected:
77
78
79 bool query;
80
81 int tx;
82
83 int rx;
84
85 std::unique_ptr<woss::TimeArr> ch_estimation;
86
87};
88
89#endif //UW_WOSS_CLMSG_CHANNEL_ESTIMATION_H
Class for channel estimation synchronous cross-layer messaging.
Definition uw-woss-clmsg-channel-estimation.h:52
std::unique_ptr< woss::TimeArr > ch_estimation
Definition uw-woss-clmsg-channel-estimation.h:85
std::unique_ptr< woss::TimeArr > getTimeArr()
Definition uw-woss-clmsg-channel-estimation.h:70
void setTimeArr(std::unique_ptr< woss::TimeArr > time_arr)
Definition uw-woss-clmsg-channel-estimation.h:68
int getRx() const
Definition uw-woss-clmsg-channel-estimation.h:65
bool isQuery() const
Definition uw-woss-clmsg-channel-estimation.h:73
int rx
Definition uw-woss-clmsg-channel-estimation.h:83
bool query
Definition uw-woss-clmsg-channel-estimation.h:79
int tx
Definition uw-woss-clmsg-channel-estimation.h:81
virtual ClMessage * copy() override
Definition uw-woss-clmsg-channel-estimation.cpp:52
virtual ~ClMsgChannelEstimation() override=default
int getTx() const
Definition uw-woss-clmsg-channel-estimation.h:63
Definitions and library for woss::TimeArr class.
ClMessage_t CLMSG_CHANNEL_ESTIMATION
Definition uw-woss-clmsg-channel-estimation.cpp:37