LeviLamina
Loading...
Searching...
No Matches
PoweredBlockComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/redstone/circuit/components/BaseCircuitComponent.h"
7#include "mc/world/redstone/circuit/components/CircuitComponentType.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockPos;
13class CircuitSystem;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<1, 1, bool> mPromotedToProducer;
22 ::ll::TypedStorage<1, 1, bool> mAllowAsPowerSource;
23 ::ll::TypedStorage<8, 8, ::CircuitComponentType const> mCircuitComponentType;
24 // NOLINTEND
25
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 virtual bool
30 allowConnection(::CircuitSceneGraph& graph, ::CircuitTrackingInfo const& info, bool& bDirectlyPowered) /*override*/;
31
32 virtual bool addSource(
34 ::CircuitTrackingInfo const& info,
35 int& dampening,
36 bool& bDirectlyPowered
37 ) /*override*/;
38
39 virtual bool evaluate(::CircuitSystem& system, ::BlockPos const& pos) /*override*/;
40
41 virtual bool canConsumerPower() const /*override*/;
42
43 virtual bool hasChildrenSource() const /*override*/;
44
45 virtual int getStrength() const /*override*/;
46
47 virtual ::CircuitComponentType getCircuitComponentType() const /*override*/;
48
49 virtual ~PoweredBlockComponent() /*override*/ = default;
50 // NOLINTEND
51
52public:
53 // virtual function thunks
54 // NOLINTBEGIN
55 MCAPI bool $allowConnection(::CircuitSceneGraph& graph, ::CircuitTrackingInfo const& info, bool& bDirectlyPowered);
56
57 MCAPI bool
58 $addSource(::CircuitSceneGraph& graph, ::CircuitTrackingInfo const& info, int& dampening, bool& bDirectlyPowered);
59
60 MCFOLD bool $evaluate(::CircuitSystem& system, ::BlockPos const& pos);
61
62 MCFOLD bool $canConsumerPower() const;
63
64 MCFOLD bool $hasChildrenSource() const;
65
66 MCAPI int $getStrength() const;
67
68 MCFOLD ::CircuitComponentType $getCircuitComponentType() const;
69
70
71 // NOLINTEND
72
73public:
74 // vftables
75 // NOLINTBEGIN
76 MCAPI static void** $vftable();
77 // NOLINTEND
78};
Definition BaseCircuitComponent.h:19
Definition BlockPos.h:19
Definition CircuitSceneGraph.h:18
Definition CircuitSystem.h:15
Definition CircuitTrackingInfo.h:14
Definition PoweredBlockComponent.h:17