OpenTwin 0.1
OpenTwin
 
Loading...
Searching...
No Matches
aUidMangager.h
Go to the documentation of this file.
1/*
2 * File: aUidManager.h
3 * Package: akCore
4 *
5 * Created on: February 06, 2020
6 * Author: Alexander Kuester
7 * Copyright (c) 2022 Alexander Kuester
8 * This file is part of the uiCore component.
9 * This file is subject to the terms and conditions defined in
10 * file 'LICENSE', which is part of this source code package.
11 */
12
13#pragma once
14
15// C++ header
16#include <mutex> // mutex
17
18// AK header
19#include <akCore/globalDataTypes.h> // API Export
20
21namespace ak {
22
26 public:
27
30
32 virtual ~aUidManager();
33
34 // ############################################################################
35
37 virtual UID getId(void);
38
40 void reset(void);
41
44 void setLatestUid(UID _uid);
45
46 private:
47 UID m_currentId;
48 std::mutex m_mutex;
49
50 // Block copy constructor
51 aUidManager(const aUidManager & other) = delete;
52
53 // Block assignment operator
54 aUidManager & operator = (const aUidManager & other) = delete;
55
56 };
57}
#define UICORE_API_EXPORT
Definition globalDataTypes.h:20
This class is used to manage UIDs. This UID manager is incrementing the UID on each getId call.
Definition aUidMangager.h:25
Definition uiAPI.h:45
unsigned long long UID
The UID datatype used for objects.
Definition globalDataTypes.h:65