Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
LogicsGenerationParams.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_LOGIC_LOGICSGENERATIONPARAMS_HPP_
2#define IV_SRC_LOGIC_LOGICSGENERATIONPARAMS_HPP_
3
5#include "logic/defines.hpp"
6#include "logic/types.hpp"
7#include "math/structs.hpp"
8
9namespace iv::logic
10{
11
13{
16 std::optional<std::string> libraryTagName {std::nullopt};
17
18 std::weak_ptr<AbstractLogicsElement> logicsElementOut;
19};
20
22{
25
26 std::weak_ptr<BlockProperties> connectedBlock;
29
30 std::optional<iv::types::channelId> channelId {std::nullopt};
31 std::optional<iv::logic::eConstantLogicState> constantState {std::nullopt};
32 std::optional<std::string> labelName {std::nullopt};
33 std::optional<std::string> labelDescription {std::nullopt};
34 std::optional<iv::logic::eBroadCastChannelType> broadCastChannelType {std::nullopt};
35 std::optional<uint32_t> broadCastChannelIndexArea {std::nullopt};
36};
37
48
50{
53
54 std::optional<std::string> text {std::nullopt};
55 std::optional<iv::types::Size> rectangleSize {std::nullopt};
56};
57
59{
61 std::vector<std::shared_ptr<BlockProperties>> blocks;
62 std::vector<std::shared_ptr<OtherComponentProperties>> otherComponents;
63 std::vector<std::shared_ptr<ConnectionProperties>> connections;
64 std::vector<std::shared_ptr<UiComponentProperties>> uiComponents;
65};
66
67}// namespace iv::logic
68
69#endif//IV_SRC_LOGIC_LOGICSGENERATIONPARAMS_HPP_
Definition LogicRectangle.cpp:4
eOthers
Definition enums.hpp:30
eDBBlockParamType
Definition defines.hpp:20
eLogicsElementType
Definition enums.hpp:8
uint32_t paramNumber
Definition types.hpp:136
uint16_t unitId
Definition types.hpp:77
Definition LogicsGenerationParams.hpp:13
std::optional< std::string > libraryTagName
Definition LogicsGenerationParams.hpp:16
iv::math::geometry::Point2d position
Definition LogicsGenerationParams.hpp:15
std::weak_ptr< AbstractLogicsElement > logicsElementOut
Definition LogicsGenerationParams.hpp:18
iv::types::logic::ComponentType componentTypeTuple
Definition LogicsGenerationParams.hpp:14
Definition LogicsGenerationParams.hpp:39
iv::types::logic::paramNumber outputParamNumber
Definition LogicsGenerationParams.hpp:42
iv::logic::eDBBlockParamType outputType
Definition LogicsGenerationParams.hpp:41
iv::types::logic::paramNumber inputParamNumber
Definition LogicsGenerationParams.hpp:46
iv::logic::eDBBlockParamType inputType
Definition LogicsGenerationParams.hpp:45
std::weak_ptr< BlockProperties > inputBlock
Definition LogicsGenerationParams.hpp:44
std::weak_ptr< BlockProperties > outputBlock
Definition LogicsGenerationParams.hpp:40
Definition LogicsGenerationParams.hpp:59
std::vector< std::shared_ptr< UiComponentProperties > > uiComponents
Definition LogicsGenerationParams.hpp:64
std::vector< std::shared_ptr< BlockProperties > > blocks
Definition LogicsGenerationParams.hpp:61
iv::types::unitId unitId
Definition LogicsGenerationParams.hpp:60
std::vector< std::shared_ptr< ConnectionProperties > > connections
Definition LogicsGenerationParams.hpp:63
std::vector< std::shared_ptr< OtherComponentProperties > > otherComponents
Definition LogicsGenerationParams.hpp:62
Definition LogicsGenerationParams.hpp:22
std::optional< iv::logic::eBroadCastChannelType > broadCastChannelType
Definition LogicsGenerationParams.hpp:34
std::optional< iv::logic::eConstantLogicState > constantState
Definition LogicsGenerationParams.hpp:31
iv::logic::eDBBlockParamType connectedParamType
Definition LogicsGenerationParams.hpp:27
std::optional< std::string > labelName
Definition LogicsGenerationParams.hpp:32
std::optional< iv::types::channelId > channelId
Definition LogicsGenerationParams.hpp:30
iv::logic::eOthers othersType
Definition LogicsGenerationParams.hpp:23
std::weak_ptr< BlockProperties > connectedBlock
Definition LogicsGenerationParams.hpp:26
iv::types::logic::paramNumber connectedParamNumber
Definition LogicsGenerationParams.hpp:28
std::optional< std::string > labelDescription
Definition LogicsGenerationParams.hpp:33
std::optional< uint32_t > broadCastChannelIndexArea
Definition LogicsGenerationParams.hpp:35
iv::math::geometry::Point2d position
Definition LogicsGenerationParams.hpp:24
Definition LogicsGenerationParams.hpp:50
std::optional< std::string > text
Definition LogicsGenerationParams.hpp:54
std::optional< iv::types::Size > rectangleSize
Definition LogicsGenerationParams.hpp:55
iv::logic::eLogicsElementType elementType
Definition LogicsGenerationParams.hpp:51
iv::math::geometry::Point2d position
Definition LogicsGenerationParams.hpp:52
Definition structs.hpp:16
Tuple containing the type of logic component (logic blocks, library blocks & others blocks).
Definition types.hpp:22