KItinerary

vendor0080vublockdata.h
1/*
2 SPDX-FileCopyrightText: 2021 Volker Krause <vkrause@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6
7#pragma once
8
9#include <KItinerary/VdvTicketContent>
10
11namespace KItinerary {
12
13#define VDV_NUM_PROPERTY(Name, Size) \
14public: \
15 VdvNumber<Size> Name; \
16 Q_PROPERTY(uint Name MEMBER Name)
17#define VDV_DATETIME_PROPERTY(Name) \
18public: \
19 VdvDateTimeCompact Name; \
20 Q_PROPERTY(QDateTime Name MEMBER Name)
21
22#pragma pack(push)
23#pragma pack(1)
24
25class KITINERARY_EXPORT Vendor0080VUCommonData
26{
27 Q_GADGET
28 VDV_NUM_PROPERTY(terminalNumber, 2)
29 VDV_NUM_PROPERTY(samNumber, 3)
30 VDV_NUM_PROPERTY(numberOfPersons, 1)
31 VDV_NUM_PROPERTY(numberOfTickets, 1)
32};
33
34class KITINERARY_EXPORT Vendor0080VUTicketData
35{
36 Q_GADGET
37 VDV_NUM_PROPERTY(authorizationNumber, 4)
38 VDV_NUM_PROPERTY(kvpOrgId, 2)
39 VDV_NUM_PROPERTY(productNumber, 2)
40 VDV_NUM_PROPERTY(pvOrgId, 2)
41 VDV_DATETIME_PROPERTY(validFrom)
42 VDV_DATETIME_PROPERTY(validUntil)
43 VDV_NUM_PROPERTY(price, 3) // in Euro-Cent
44 VDV_NUM_PROPERTY(samSequnceNumber, 4)
45 VDV_NUM_PROPERTY(areaListLength, 1)
46 uint8_t validityAreaTag; // fixed 0xDC
47 uint8_t validityAreaDataSize;
48 VdvTicketValidityAreaData validityArea;
49};
50
51#pragma pack(pop)
52
53#undef VDV_NUM_PROPERTY
54#undef VDV_DATETIME_PROPERTY
55
56}
57
Classes for reservation/travel data models, data extraction and data augmentation.
Definition berelement.h:17
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:14:49 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.