-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathInstantiatedGMS.hpp
More file actions
53 lines (42 loc) · 1.54 KB
/
InstantiatedGMS.hpp
File metadata and controls
53 lines (42 loc) · 1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* Copyright 2022 (c) Alen Galinec
*/
#pragma once
#include <open62541/server.h>
#include <Open62541Cpp/UA_NodeId.hpp>
#include <cstdint>
#include <unordered_map>
#include "../MachineTools/InstantiatedMachineTool.hpp"
#include "../MachineTools/SimulatedInstance.hpp"
#include "../TypeDefinition/GMS/GMSType.hpp"
#include "../UmatiServerLib/NodesMaster.hpp"
class InstantiatedGMS : public SimulatedInstance {
public:
InstantiatedGMS(UA_Server *pServer);
const std::uint16_t &NsIndex;
protected:
virtual void CreateObject();
virtual void Simulate() override;
virtual void InstantiateEquipment();
virtual void InstantiateIdentification();
virtual void InstantiateNotification();
virtual void InstantiateProduction();
virtual void InstantiateResultManagement();
virtual void InstantiateMonitoring();
// TODO: Take care of subcomponents later
// virtual void InstantiateNotificationCalibration();
// virtual void InstantiatePrognosesCalibration();
protected:
static const std::unordered_map<std::uint32_t, UmatiServerLib::LocalizedText_t> CLASS_MAP;
GMS::GMSSensor_t &InstantiateSensor(std::string const &sensorName);
protected:
std::string MachineName;
std::uint16_t m_nsIndex;
GMS::GMS_t gms;
UA_Server *m_pServer;
open62541Cpp::UA_NodeId m_nodeId = open62541Cpp::UA_NodeId((std::uint16_t)0, 0);
NodesMaster n;
};