LeviLamina
Loading...
Searching...
No Matches
SidePoweredComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/redstone/circuit/components/CapacitorComponent.h"
7#include "mc/world/redstone/circuit/components/CircuitComponentList.h"
8
9// auto generated forward declare list
10// clang-format off
12class BlockPos;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 24, ::CircuitComponentList> mSideComponents;
22 // NOLINTEND
23
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual ~SidePoweredComponent() /*override*/ = default;
28
29 virtual uchar getPoweroutDirection() const /*override*/;
30
31 virtual bool
32 allowConnection(::CircuitSceneGraph& graph, ::CircuitTrackingInfo const& info, bool& bDirectlyPowered) /*override*/;
33
34 virtual bool canConsumePowerAnyDirection() const /*override*/;
35
36 virtual bool canConsumerPower() const /*override*/;
37
38 virtual void removeSource(::BlockPos const& posSource, ::BaseCircuitComponent const* pComponent) /*override*/;
39
40 virtual void removeFromAnySourceList(::BaseCircuitComponent const* component) /*override*/;
41 // NOLINTEND
42
43public:
44 // virtual function thunks
45 // NOLINTBEGIN
46 MCFOLD uchar $getPoweroutDirection() const;
47
48 MCFOLD bool $allowConnection(::CircuitSceneGraph& graph, ::CircuitTrackingInfo const& info, bool& bDirectlyPowered);
49
50 MCFOLD bool $canConsumePowerAnyDirection() const;
51
52 MCFOLD bool $canConsumerPower() const;
53
54 MCAPI void $removeSource(::BlockPos const& posSource, ::BaseCircuitComponent const* pComponent);
55
56 MCAPI void $removeFromAnySourceList(::BaseCircuitComponent const* component);
57
58
59 // NOLINTEND
60};
Definition BaseCircuitComponent.h:19
Definition BlockPos.h:17
Definition CapacitorComponent.h:9
Definition CircuitSceneGraph.h:18
Definition CircuitTrackingInfo.h:14
Definition SidePoweredComponent.h:17