cc_tools_qt
Common Environment for Protocol Analysis.
Loading...
Searching...
No Matches
include
cc_tools_qt
ToolsDataInfo.h
1
//
2
// Copyright 2014 - 2025 (C). Alex Robenko. All rights reserved.
3
//
4
5
// This file is free software: you can redistribute it and/or modify
6
// it under the terms of the GNU General Public License as published by
7
// the Free Software Foundation, either version 3 of the License, or
8
// (at your option) any later version.
9
//
10
// This program is distributed in the hope that it will be useful,
11
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
// GNU General Public License for more details.
14
//
15
// You should have received a copy of the GNU General Public License
16
// along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18
19
#pragma once
20
21
#include "cc_tools_qt/ToolsApi.h"
22
23
#include <QtCore/QVariant>
24
#include <QtCore/QVariantMap>
25
26
#include <chrono>
27
#include <memory>
28
#include <string>
29
#include <vector>
30
31
namespace
cc_tools_qt
32
{
33
36
struct
CC_TOOLS_API
ToolsDataInfo
37
{
39
using
TimestampClock
= std::chrono::high_resolution_clock;
40
42
using
Timestamp
= std::chrono::time_point<TimestampClock>;
43
45
using
DataSeq
= std::vector<std::uint8_t>;
46
48
using
PropertiesMap
= QVariantMap;
49
50
ToolsDataInfo
();
51
Timestamp
m_timestamp
;
52
DataSeq
m_data
;
53
PropertiesMap
m_extraProperties
;
54
};
55
57
using
ToolsDataInfoPtr
= std::shared_ptr<ToolsDataInfo>;
58
60
CC_TOOLS_API
ToolsDataInfoPtr
makeDataInfo
();
61
64
CC_TOOLS_API
ToolsDataInfoPtr
makeDataInfoTimed
();
65
66
}
// namespace cc_tools_qt
67
68
Q_DECLARE_METATYPE(
cc_tools_qt::ToolsDataInfoPtr
);
69
70
cc_tools_qt
Main namespace for all classes / functions of the shared library.
cc_tools_qt::makeDataInfoTimed
CC_TOOLS_API ToolsDataInfoPtr makeDataInfoTimed()
Dynamically allocate ToolsDataInfo and return in in ToolsDataInfoPtr;.
Definition
ToolsDataInfo.cpp:52
cc_tools_qt::ToolsDataInfoPtr
std::shared_ptr< ToolsDataInfo > ToolsDataInfoPtr
Pointer to ToolsDataInfo.
Definition
ToolsDataInfo.h:57
cc_tools_qt::makeDataInfo
CC_TOOLS_API ToolsDataInfoPtr makeDataInfo()
Dynamically allocate ToolsDataInfo and return in in ToolsDataInfoPtr;.
Definition
ToolsDataInfo.cpp:47
cc_tools_qt::ToolsDataInfo
Information about incomming or outdoing data.
Definition
ToolsDataInfo.h:37
cc_tools_qt::ToolsDataInfo::m_extraProperties
PropertiesMap m_extraProperties
Extra properties that can be used by other componets.
Definition
ToolsDataInfo.h:53
cc_tools_qt::ToolsDataInfo::PropertiesMap
QVariantMap PropertiesMap
Type of extra properties storage.
Definition
ToolsDataInfo.h:48
cc_tools_qt::ToolsDataInfo::m_data
DataSeq m_data
Actual raw data.
Definition
ToolsDataInfo.h:52
cc_tools_qt::ToolsDataInfo::m_timestamp
Timestamp m_timestamp
Timestamp when data has been received / sent.
Definition
ToolsDataInfo.h:51
cc_tools_qt::ToolsDataInfo::TimestampClock
std::chrono::high_resolution_clock TimestampClock
Type of clock used for timestamping.
Definition
ToolsDataInfo.h:39
cc_tools_qt::ToolsDataInfo::Timestamp
std::chrono::time_point< TimestampClock > Timestamp
Type of timestamps.
Definition
ToolsDataInfo.h:42
cc_tools_qt::ToolsDataInfo::DataSeq
std::vector< std::uint8_t > DataSeq
Type of raw data sequence.
Definition
ToolsDataInfo.h:45
Generated by
1.9.8