RDB 2
transaction.hpp
Go to the documentation of this file.
1 /*
2  *******************************************************************************
3  *
4  * Copyright 2023 RIEGL Laser Measurement Systems
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  * SPDX-License-Identifier: Apache-2.0
19  *
20  *******************************************************************************
21  */
22 /*!
23  *******************************************************************************
24  *
25  * \file transaction.hpp
26  * \author RIEGL LMS GmbH, Austria
27  * \brief Point cloud transaction
28  * \version 2015-10-14/AW: Initial version
29  * \version 2017-02-16/AW: RDB library version string field added (#2515)
30  * \version 2017-11-24/AW: Constructors declared as "explicit" (#2825)
31  *
32  *******************************************************************************
33  */
34 
35 #ifndef RIEGL_RDB_POINTCLOUD_TRANSACTION_HPP
36 #define RIEGL_RDB_POINTCLOUD_TRANSACTION_HPP
37 
38 //---< INCLUDES >---------------------------------------------------------------
39 
40 #include <string>
41 #include <cstdlib>
42 #include <cstdint>
43 
44 #include "riegl/rdb/context.hpp"
45 
46 //---< NAMESPACE >--------------------------------------------------------------
47 
48 namespace riegl {
49 namespace rdb {
50 namespace pointcloud {
51 
52 //---< CLASS Transaction >------------------------------------------------------
53 /*!
54  * \brief Point cloud transaction
55  * \see riegl::rdb::pointcloud::Transactions
56  */
58 {
59 public:
60  typedef std::uint32_t ID;
61 
62  ID id; //!< transaction number (TAN)
63  std::string rdb; //!< RDB library version string
64  std::string title; //!< short description, e.g. "Import"
65  std::string agent; //!< software name, e.g. "rdbimport v1.0"
66  std::string comments; //!< e.g. process details for humans
67  std::string settings; //!< e.g. process settings for software
68  std::string start; //!< start time as "yyyy-mm-dd hh:mm:ss.zzz", e.g. "2015-10-14 13:48:35.801" (local time)
69  std::string stop; //!< stop time as "yyyy-mm-dd hh:mm:ss.zzz", e.g. "2015-10-14 13:48:35.801" (local time)
70 
71  Transaction();
72  explicit Transaction(riegl::rdb::Context &context);
73 };
74 
75 }}} // namespace riegl::rdb::pointcloud
76 
77 #endif // RIEGL_RDB_POINTCLOUD_TRANSACTION_HPP
Library context.
Definition: context.hpp:75
std::string stop
stop time as "yyyy-mm-dd hh:mm:ss.zzz", e.g. "2015-10-14 13:48:35.801" (local time) ...
Definition: transaction.hpp:69
Point cloud transaction.
Definition: transaction.hpp:57
RDB library context.
RIEGL Laser Measurement Systems GmbH, Austria.
Definition: context.hpp:48
std::string comments
e.g. process details for humans
Definition: transaction.hpp:66
std::string title
short description, e.g. "Import"
Definition: transaction.hpp:64
std::string agent
software name, e.g. "rdbimport v1.0"
Definition: transaction.hpp:65
std::string rdb
RDB library version string.
Definition: transaction.hpp:63
ID id
transaction number (TAN)
Definition: transaction.hpp:62
std::string start
start time as "yyyy-mm-dd hh:mm:ss.zzz", e.g. "2015-10-14 13:48:35.801" (local time) ...
Definition: transaction.hpp:68
std::string settings
e.g. process settings for software
Definition: transaction.hpp:67