# Index

A B C D E F G H I K L M N O P R S T U V W Z
All Classes and Interfaces|All Packages|Constant Field Values

## A

add(Property<T>, T) - Method in class net.commoble.exmachina.api.content.VariantsMechanicalComponent.VariantBuilder
  Add a required property-value to this variant
addApplyWhen(MultipartMechanicalComponent.ApplyWhen) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Adds an apply-when case to this multipart definition
addCase(MultipartMechanicalComponent.Case) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Adds a case to this OrCase's list of cases (only usable if list is mutable)
addCondition(Property<T>, T, T...) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Datagen helper; mutably adds a blockstate property condition for one or more property values to this case
addMultiPropertyVariant(Consumer<VariantsMechanicalComponent.VariantBuilder>, RawNode...) - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Datagen helper to add a variant matching multiple properties' values
addOrCase(MultipartMechanicalComponent.OrCase) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Adds an OrCase to this OrCase's list of cases (only usable if list is mutable)
addVariant(Property<T>, T, RawNode...) - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Datagen helper to add a variant matching a single property's value
ALL - Static variable in interface net.commoble.exmachina.api.Channel
  Set of all channels including the sixteen color channels and redstone
AllDirectionsConnector - Enum Class in net.commoble.exmachina.api.content
  Connector for blocks that always connect in all six adjacent directions.
always(boolean, RawNode...) - Static method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Datagen helper which assigns the given nodes to all states
always(RawNode, RawNode...) - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Builder-like factory for datageneration, applying one or more RawNode(s) to all blockstates.
angularVelocity() - Method in record class net.commoble.exmachina.api.MechanicalState
  Returns the value of the `angularVelocity` record component.
apply() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Returns the value of the `apply` record component.
apply(Block) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
apply(Block) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
ApplyWhen(List<RawNode>, Optional<Either<MultipartMechanicalComponent.OrCase, MultipartMechanicalComponent.Case>>) - Constructor for record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Creates an instance of a `ApplyWhen` record class.
attemptToBuildCircuitFrom(LevelAccessor, BlockPos) - Static method in class net.commoble.exmachina.internal.power.CircuitBuilder
  Returns Circuit at the worldposition.

## B

bake(Block) - Method in interface net.commoble.exmachina.api.Connector
  Bakes a BakedConnector function for the associated block.
bake(Block) - Method in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
bake(Block) - Method in record class net.commoble.exmachina.api.content.BlockStateConnector
bake(Block) - Method in record class net.commoble.exmachina.api.content.BlockStateProperty
bake(Block) - Method in record class net.commoble.exmachina.api.content.ConstantProperty
bake(Block) - Method in record class net.commoble.exmachina.api.content.DirectionsConnector
bake(Block) - Method in enum class net.commoble.exmachina.api.content.NoneConnector
bake(Block) - Method in record class net.commoble.exmachina.api.content.UnionConnector
bake(Block) - Method in interface net.commoble.exmachina.api.StaticProperty
  Returns DataResult success holding a state-to-double function if block is valid, error result otherwise.
bake(Block, RegistryAccess) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
bake(Block, RegistryAccess) - Method in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
bake(Block, RegistryAccess) - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
bake(Block, RegistryAccess) - Method in interface net.commoble.exmachina.api.MechanicalComponent
  Validates and bakes a MechanicalBlockComponent for this component's associated block.
bake(BlockState, RegistryAccess) - Method in interface net.commoble.exmachina.api.MechanicalBlockComponent
  Creates a MechanicalStateComponent for the given blockstate.
bakedNodes() - Method in record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
  Returns the value of the `bakedNodes` record component.
baseVelocity() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Returns the value of the `baseVelocity` record component.
BlockComponent - Record Class in net.commoble.exmachina.api
  All of the components provided by a `CircuitComponent`, cached and validated for a Block.
BlockComponent(Connector.BlockConnector, StaticProperty.BakedStaticProperty, StaticProperty.BakedStaticProperty, DynamicProperty, DynamicProperty) - Constructor for record class net.commoble.exmachina.api.BlockComponent
  Creates an instance of a `BlockComponent` record class.
blocksInGraph() - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns the value of the `blocksInGraph` record component.
BLOCKSTATE_STREAM_CODEC - Static variable in class net.commoble.exmachina.internal.util.CodecHelper
  StreamCodec for BlockStates
BlockStateConnector - Record Class in net.commoble.exmachina.api.content
  Connector for a block whose connections depend on blockstate properties.
BlockStateConnector(Map<String, EnumSet<Direction>>) - Constructor for record class net.commoble.exmachina.api.content.BlockStateConnector
  Creates an instance of a `BlockStateConnector` record class.
BlockStateProperty - Record Class in net.commoble.exmachina.api.content
  StaticProperty for a block which has different property values for different blockstates.
BlockStateProperty(Map<String, Double>) - Constructor for record class net.commoble.exmachina.api.content.BlockStateProperty
  Creates an instance of a `BlockStateProperty` record class.
builder() - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Builder-like factory for convenience
builder() - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Builder-like helper for datageneration
builder(boolean) - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Datagen helper; Creates and returns a MultipartMechanicalComponent for whom cases can be defined.
builder(boolean) - Static method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Datagen helper returning a mutable builder-like VariantsMechanicalComponent

## C

Case(Map<String, String>) - Constructor for record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Creates an instance of a `Case` record class.
cases() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Returns the value of the `cases` record component.
channel() - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns the value of the `channel` record component.
Channel - Interface in net.commoble.exmachina.api
  Channels are used by the signal graph to keep signals separate from each other.
Channel.Redstone - Enum Class in net.commoble.exmachina.api
  The Redstone Channel
Channel.Single - Record Class in net.commoble.exmachina.api
  Single channels represent one of the sixteen-color digital channels
Circuit - Interface in net.commoble.exmachina.api
  a Circuit represents a power graph of blocks.
CIRCUIT_COMPONENT - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the datapack Registry for CircuitComponents.
CircuitBuilder - Class in net.commoble.exmachina.internal.power
  circuit builder
CircuitComponent - Record Class in net.commoble.exmachina.api
  CircuitComponents represent the circuit properties associated with particular Blocks.
CircuitComponent(Connector, StaticProperty, StaticProperty, DynamicProperty, DynamicProperty) - Constructor for record class net.commoble.exmachina.api.CircuitComponent
  Creates an instance of a `CircuitComponent` record class.
CircuitImpl - Class in net.commoble.exmachina.internal.power
  Internal implementation of Circuit API for power graphs
CircuitImpl(LevelAccessor, double, double, Map<BlockPos, Pair<BlockState, StateComponent>>, List<DoubleSupplier>, List<DoubleSupplier>) - Constructor for class net.commoble.exmachina.internal.power.CircuitImpl
  constructs a CircuitImpl with the given permanent properties
CircuitManager - Interface in net.commoble.exmachina.api
  API for handling power graphs
clear() - Method in enum class net.commoble.exmachina.internal.mechanical.MechanicalComponentBaker
  Clears the cache
clear() - Method in class net.commoble.exmachina.internal.power.ComponentBaker
  Clears the cache
codec() - Method in interface net.commoble.exmachina.api.Connector
  Returns Codec registered to `ExMachinaRegistries.CONNECTOR_TYPE`.
codec() - Method in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
codec() - Method in record class net.commoble.exmachina.api.content.BlockStateConnector
codec() - Method in record class net.commoble.exmachina.api.content.BlockStateProperty
codec() - Method in record class net.commoble.exmachina.api.content.ConstantProperty
codec() - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
codec() - Method in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
codec() - Method in record class net.commoble.exmachina.api.content.DirectionsConnector
codec() - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
codec() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
codec() - Method in enum class net.commoble.exmachina.api.content.NoneConnector
codec() - Method in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
codec() - Method in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
codec() - Method in enum class net.commoble.exmachina.api.content.NoneTransmitter
codec() - Method in record class net.commoble.exmachina.api.content.UnionConnector
codec() - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
codec() - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
codec() - Method in interface net.commoble.exmachina.api.DynamicProperty
  Returns Codec registered to `ExMachinaRegistries.DYNAMIC_PROPERTY_TYPE`..
codec() - Method in interface net.commoble.exmachina.api.MechanicalComponent
  Returns registerd MapCodec for this subclass.
codec() - Method in interface net.commoble.exmachina.api.SignalComponent
  Returns the sub-codec for this component type registered via `ExMachinaRegistries.SIGNAL_COMPONENT_TYPE`
codec() - Method in interface net.commoble.exmachina.api.StaticProperty
  Returns Codec registered to `ExMachinaRegistries.STATIC_PROPERTY_TYPE`..
CODEC - Static variable in interface net.commoble.exmachina.api.Channel
  Codec which parses a string at a channel, can be "redstone" or any `DyeColor`, e.g.
CODEC - Static variable in record class net.commoble.exmachina.api.CircuitComponent
CODEC - Static variable in interface net.commoble.exmachina.api.Connector
  Master dispatch codec for Connectors
CODEC - Static variable in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
  {"type": "exmachina:all_directions"}
CODEC - Static variable in record class net.commoble.exmachina.api.content.BlockStateConnector
  e.g.
CODEC - Static variable in record class net.commoble.exmachina.api.content.BlockStateProperty
  e.g.
CODEC - Static variable in record class net.commoble.exmachina.api.content.ConstantProperty
  { "type": "exmachina:constant", "value": 5.0 }
CODEC - Static variable in record class net.commoble.exmachina.api.content.CubeSignalComponent
  { "type": "exmachina:cube", "receives_power": false // optional boolean; if true, will recheck neighbor power after a graph update }
CODEC - Static variable in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
  {"type": "exmachina:default"}
CODEC - Static variable in record class net.commoble.exmachina.api.content.DirectionsConnector
  { "type": "exmachina:directions", "directions": ["north", "south", "east", "west"] // list of Directions }
CODEC - Static variable in record class net.commoble.exmachina.api.content.FloorSignalComponent
  { "type": "exmachina:floor", "offset": -1, // optional int, values is added to vanilla redstone signal level "receives_power": false // optional boolean; if true, will recheck neighbor power after a graph update }
CODEC - Static variable in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  codec
CODEC - Static variable in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  codec
CODEC - Static variable in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  { "type": "exmachina:multipart", "save": true, // automatically persists updates in data attached to blockentity, defaults to false "multipart": [ { // apply one or more nodes in all cases "apply": { // see RawNode class for object definition } }, { // apply one or more nodes in specific case "apply": [ { // see RawNode class for object definition } ], "when": { // list of blockstate predicates, same format as multipart blockstate model jsons "up": "true", "face": "nortH|south" } } ] }
CODEC - Static variable in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  codec
CODEC - Static variable in enum class net.commoble.exmachina.api.content.NoneConnector
  {"type": "exmachina:none"}
CODEC - Static variable in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
  {"type": "exmachina:none"}
CODEC - Static variable in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
  {"type": "exmachina:none"}
CODEC - Static variable in enum class net.commoble.exmachina.api.content.NoneTransmitter
  {"type": "exmachina:none"}
CODEC - Static variable in record class net.commoble.exmachina.api.content.RawNode
  { "shape": e.g.
CODEC - Static variable in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  { "direction": "south", // optional field, defaults to none "neighbor_shape": e.g.
CODEC - Static variable in record class net.commoble.exmachina.api.content.UnionConnector
  { "type": "exmachina:union", "values": [ { // another connector object }, { // another connector object }, // etc ] }
CODEC - Static variable in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  { "type": "exmachina:variants", "save": true, // automatically persists updates in data attached to blockentity, defaults to false "variants": { "side=down,waterlogged=false": [ // same format as blockstate json variant selectors // list of RawNode objects, see that class for additional docs ], "side=up": { // singular RawNode object is fine too } } }
CODEC - Static variable in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
CODEC - Static variable in interface net.commoble.exmachina.api.DynamicProperty
  Master dispatch codec for DynamicProperty(s); subcodecs can be registered to `ExMachinaRegistries.DYNAMIC_PROPERTY_TYPE`
CODEC - Static variable in interface net.commoble.exmachina.api.MechanicalComponent
  { "type": "namespace:subcodec", // additional fields specified by subcodec }
CODEC - Static variable in class net.commoble.exmachina.api.MechanicalNodeStates
  Codec for the attachment map.
CODEC - Static variable in record class net.commoble.exmachina.api.MechanicalState
  { "power": 10.0, "angular_velocity": -1.0 }
CODEC - Static variable in interface net.commoble.exmachina.api.NodeShape
  Three valid formats:
CODEC - Static variable in enum class net.commoble.exmachina.api.NodeShape.Cube
  "shape": "cube"
CODEC - Static variable in record class net.commoble.exmachina.api.NodeShape.Side
  "shape": "north"
CODEC - Static variable in record class net.commoble.exmachina.api.NodeShape.SideSide
  "shape": {"face": "north", "side": "up"}
CODEC - Static variable in enum class net.commoble.exmachina.api.Parity
  "parity": "negative"
CODEC - Static variable in interface net.commoble.exmachina.api.SignalComponent
  Master dispatch codec for SignalComponents
CODEC - Static variable in interface net.commoble.exmachina.api.StaticProperty
  Master dispatch codec for StaticProperty(s).
CodecHelper - Class in net.commoble.exmachina.internal.util
  codec utils
color() - Method in record class net.commoble.exmachina.api.Channel.Single
  Returns the value of the `color` record component.
COMMON_CONFIG - Static variable in class net.commoble.exmachina.internal.ExMachina
  config/exmachina-common.toml
CommonConfig - Record Class in net.commoble.exmachina.internal
  /config/exmachina-common.toml
CommonConfig(ModConfigSpec.IntValue, ModConfigSpec.IntValue, ModConfigSpec.IntValue) - Constructor for record class net.commoble.exmachina.internal.CommonConfig
  Creates an instance of a `CommonConfig` record class.
component() - Method in record class net.commoble.exmachina.api.StateWirer
  Returns the value of the `component` record component.
component() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Returns the value of the `component` record component.
ComponentBaker - Class in net.commoble.exmachina.internal.power
  Cache of baked power graph components
components() - Method in interface net.commoble.exmachina.api.Circuit
  Returns the immutable map of blockpositions this circuit occupies and the states that existed there when the circuit was built.
components() - Method in class net.commoble.exmachina.internal.power.CircuitImpl
components() - Method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
conditions() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Returns the value of the `conditions` record component.
ConfigHelper - Class in net.commoble.exmachina.internal.util
  Helper for creating configs and defining complex objects in configs
connectableNodes() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `connectableNodes` record component.
connectableNodes() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns the value of the `connectableNodes` record component.
connectedPositions(LevelReader, BlockPos) - Method in interface net.commoble.exmachina.api.Connector.StateConnector
  Retrieves the set of positions a block at the given position can connect to.
connections() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns the value of the `connections` record component.
connector() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns the value of the `connector` record component.
connector() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns the value of the `connector` record component.
connector() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns the value of the `connector` record component.
Connector - Interface in net.commoble.exmachina.api
  Connectors are properties assigned to block instances that determine which positions a block at a given position could potentially connect to in a circuit.
CONNECTOR_TYPE - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the static Registry for Connector MapCodecs.
Connector.BlockConnector - Interface in net.commoble.exmachina.api
  Connector cached and validated for its block
Connector.StateConnector - Interface in net.commoble.exmachina.api
  Cached connector for a given BlockState which defines power graph connectivity
ConstantProperty - Record Class in net.commoble.exmachina.api.content
  StaticProperty representing a constant value for all blockstates.
ConstantProperty(double) - Constructor for record class net.commoble.exmachina.api.content.ConstantProperty
  Creates an instance of a `ConstantProperty` record class.
create(Property<T>, T, T...) - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Datagen convenience method returning a single-property case
create(ModConfigSpec.Builder) - Static method in record class net.commoble.exmachina.internal.CommonConfig
  Returns common config.
create(ModConfigSpec.Builder) - Static method in record class net.commoble.exmachina.internal.ServerConfig
CUBE - Enum constant in enum class net.commoble.exmachina.api.NodeShape.Cube
  the Cube
CubeSignalComponent - Record Class in net.commoble.exmachina.api.content
  SignalComponent for a Block that can connect to the signal graph on all sides, providing their vanilla redstone signal output to the graph.
CubeSignalComponent(boolean) - Constructor for record class net.commoble.exmachina.api.content.CubeSignalComponent
  Creates an instance of a `CubeSignalComponent` record class.

## D

DefaultSignalComponent - Enum Class in net.commoble.exmachina.api.content
  Default SignalComponent used for blocks that have no source assigned to them.
delegate() - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
  Returns the value of the `delegate` record component.
direction() - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Returns the value of the `direction` record component.
directions() - Method in record class net.commoble.exmachina.api.content.DirectionsConnector
  Returns the value of the `directions` record component.
DirectionsConnector - Record Class in net.commoble.exmachina.api.content
  Connector type for a block that connects to a subset of its six neighbors.
DirectionsConnector(EnumSet<Direction>) - Constructor for record class net.commoble.exmachina.api.content.DirectionsConnector
  Creates an instance of a `DirectionsConnector` record class.
dispatch(ResourceKey<Registry<MapCodec<? extends T>>>, Function<? super T, ? extends MapCodec<? extends T>>) - Static method in class net.commoble.exmachina.internal.util.CodecHelper
  Helper to make a dispatch codec for a custom forge registry of codecs.
DYNAMIC_PROPERTY_TYPE - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the static Registry for DynamicProperty MapCodecs.
dynamicLoad() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns the value of the `dynamicLoad` record component.
dynamicLoad() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns the value of the `dynamicLoad` record component.
dynamicLoad() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns the value of the `dynamicLoad` record component.
DynamicProperty - Interface in net.commoble.exmachina.api
  Dynamic properties are assigned to blocks as part of their circuit element definition.
dynamicSource() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns the value of the `dynamicSource` record component.
dynamicSource() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns the value of the `dynamicSource` record component.
dynamicSource() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns the value of the `dynamicSource` record component.

## E

empty() - Static method in interface net.commoble.exmachina.api.Circuit
  Returns Empty/invalid circuit.
empty() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns CircuitComponent representing empty/invalid components (equivalent to air blocks/items).
EMPTY - Static variable in record class net.commoble.exmachina.api.BlockComponent
  BlockComponent for blocks which do not have assigned CircuitComponents or are otherwise invalid
EMPTY - Static variable in interface net.commoble.exmachina.api.Connector.BlockConnector
  empty/invalid BlockConnector instance representing blocks which do not have an assigned Connector or are otherwise invalid
EMPTY - Static variable in interface net.commoble.exmachina.api.Connector.StateConnector
  Empty/invalid StateConnector for blocks which do not have an assigned Connector or are otherwise invalid
EMPTY - Static variable in interface net.commoble.exmachina.api.MechanicalBlockComponent
  MechanicalBlockComponent for blocks which have no assigned component
EMPTY - Static variable in interface net.commoble.exmachina.api.MechanicalStateComponent
  Represents empty/invalid component
EMPTY - Static variable in record class net.commoble.exmachina.api.StateComponent
  no-op StateComponent representing a componentless blockstate or invalid component
EMPTY - Static variable in interface net.commoble.exmachina.api.StaticProperty.BakedStaticProperty
  BakedStaticProperty instance used for blocks which do not have power graph components or is otherwise invalid
EmptyCircuit - Enum Class in net.commoble.exmachina.internal.power
  Represents a power graph circuit without nodes or power
enqueue(ResourceKey<Level>, BlockPos) - Method in class net.commoble.exmachina.internal.mechanical.MechanicalGraphBuffer
  Enqueues a blockpos to run a mechanical graph update at at the end of the tick
enqueue(ResourceKey<Level>, BlockPos) - Method in class net.commoble.exmachina.internal.signal.SignalGraphBuffer
  Enqueues a blockpos to run a signal graph update at at the end of the tick
equals(Object) - Method in record class net.commoble.exmachina.api.BlockComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.Channel.Single
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.CircuitComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.BlockStateConnector
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.BlockStateProperty
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.ConstantProperty
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.DirectionsConnector
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.RawNode
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.UnionConnector
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.MechanicalConnection
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.MechanicalNode
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.MechanicalState
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.NodeShape.Side
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.NodeShape.SideSide
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.StateComponent
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.StateWirer
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.api.TransmissionNode
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.CommonConfig
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.ServerConfig
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
  Indicates whether some other object is "equal to" this one.
ExMachina - Class in net.commoble.exmachina.internal
  Mod class for Ex Machina where things are registered and events are subscribed.
ExMachina(IEventBus) - Constructor for class net.commoble.exmachina.internal.ExMachina
  mod constructor
ExMachinaDataMaps - Class in net.commoble.exmachina.api
  DataMapTypes for Ex Machina's data maps
ExMachinaGameEvents - Class in net.commoble.exmachina.api
  The signal graph update event is used to inform the signal grapher that a graph update should occur.
ExMachinaRegistries - Class in net.commoble.exmachina.api
  Registry ResourceKeys for Ex Machina's static registries
ExMachinaTags - Class in net.commoble.exmachina.api
  Tags under the exmachina namespace
ExMachinaTags.Blocks - Class in net.commoble.exmachina.api
  Block Tags under the exmachina namespace
EXPANDED_SINGLES - Static variable in interface net.commoble.exmachina.api.Channel
  List of each of the color channels' connectable sets, indexed by color ordinal e.g.

## F

face() - Method in record class net.commoble.exmachina.api.NodeShape.Side
  Returns the value of the `face` record component.
face() - Method in record class net.commoble.exmachina.api.NodeShape.SideSide
  Returns the value of the `face` record component.
FloorSignalComponent - Record Class in net.commoble.exmachina.api.content
  SignalComponent which can connect to graph nodes if the connecting graph node is adjacent to the source block and on the floor (face direction == DOWN)
FloorSignalComponent(int, boolean) - Constructor for record class net.commoble.exmachina.api.content.FloorSignalComponent
  Creates an instance of a `FloorSignalComponent` record class.
fromOriginNode(ServerLevel, SignalGraphKey, TransmissionNode, Map<ServerLevel, Map<BlockPos, StateWirer>>) - Static method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Creates a SignalGraph at a given origin context
fromOriginNode(LevelAccessor, MechanicalGraphKey, MechanicalNode, Function<ResourceKey<Level>, LevelAccessor>, Function<BlockGetter, Function<BlockPos, MechanicalBlockState>>, Map<Fraction, MechanicalGraph.GearRatio>) - Static method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Constructs a MechanicalGraph from a given origin

## G

gearDivisor() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns the value of the `gearDivisor` record component.
gearMultiplier() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns the value of the `gearMultiplier` record component.
GearRatio(Fraction, Fraction, double, double, double, double) - Constructor for record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Creates an instance of a `GearRatio` record class.
generation() - Method in class net.commoble.exmachina.internal.power.ComponentBaker
  Returns the current cache generation number.
get() - Static method in class net.commoble.exmachina.internal.power.ComponentBaker
  Returns the ComponentBaker.
get(ServerLevel) - Static method in interface net.commoble.exmachina.api.CircuitManager
  Gets the CircuitManager for a given ServerLevel
get(MinecraftServer) - Static method in class net.commoble.exmachina.internal.mechanical.MechanicalGraphBuffer
  Returns MechanicalGraphBuffer for the overworld.
get(MinecraftServer) - Static method in class net.commoble.exmachina.internal.signal.SignalGraphBuffer
  Returns SignalGraphBuffer for the overworld.
getBlockEntity(BlockPos) - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getBlockState(BlockPos) - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getCircuit(BlockPos) - Method in interface net.commoble.exmachina.api.CircuitManager
  Get a circuit at a position.
getCircuit(BlockPos) - Method in class net.commoble.exmachina.internal.power.LevelCircuitManager
getComponent(BlockState, RegistryAccess) - Method in class net.commoble.exmachina.internal.power.ComponentBaker
  Returns StateComponent for a given blockstate.
getConnectableChannels() - Method in interface net.commoble.exmachina.api.Channel
  Returns Set of Channels this channel can connect to.
getConnectableChannels() - Method in enum class net.commoble.exmachina.api.Channel.Redstone
getConnectableChannels() - Method in record class net.commoble.exmachina.api.Channel.Single
getCurrent() - Method in interface net.commoble.exmachina.api.Circuit
  Returns the current running through the circuit (in charge/second).
getCurrent() - Method in class net.commoble.exmachina.internal.power.CircuitImpl
getCurrent() - Method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
getDirectSignal(BlockPos, Direction) - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getFluidState(BlockPos) - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getHeight() - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getMachineTicks(Level) - Static method in record class net.commoble.exmachina.api.MechanicalState
  Return a modulated game time suitable for determining machine rotation.
getMinY() - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getNodes(ResourceKey<Level>, BlockGetter, BlockPos) - Method in record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
getNodes(ResourceKey<Level>, BlockGetter, BlockPos) - Method in interface net.commoble.exmachina.api.MechanicalStateComponent
  Provides the MechanicalNodes at a given position where this blockstate is
getOrCreate(ServerLevel) - Static method in class net.commoble.exmachina.internal.power.LevelCircuitManager
  Returns LevelCircuitManager for a given ServerLevel.
getOrDefault(BlockGetter, BlockPos) - Static method in record class net.commoble.exmachina.api.StateWirer
  Returns StateWirer using default wiring components if the given block has none assigned.
getOrDefault(BlockGetter, BlockPos, RegistryAccess) - Static method in record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Gets the BlockState at a given position and its MechanicalStateComponent, if any
getPowerSuppliedTo(BlockPos) - Method in interface net.commoble.exmachina.api.Circuit
  Returns the power in energy/second this Circuit is supplying to a given position.
getPowerSuppliedTo(BlockPos) - Method in class net.commoble.exmachina.internal.power.CircuitImpl
getPowerSuppliedTo(BlockPos) - Method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
getSerializedName() - Method in enum class net.commoble.exmachina.api.Parity
getSignal(BlockPos, Direction) - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
getStateComponent(BlockState, RegistryAccess) - Method in enum class net.commoble.exmachina.internal.mechanical.MechanicalComponentBaker
  Returns MechanicalStateComponent for the given state.
getStateConnector(BlockState) - Method in interface net.commoble.exmachina.api.Connector.BlockConnector
  Returns a StateConnector for a given blockstate of this block, which is cached.
getTransmissionNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Channel) - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
getTransmissionNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Channel) - Method in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
getTransmissionNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Channel) - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
getTransmissionNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Channel) - Method in enum class net.commoble.exmachina.api.content.NoneTransmitter
getTransmissionNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Channel) - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
getTransmissionNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Channel) - Method in interface net.commoble.exmachina.api.SignalComponent
  Defines the TransmissionNode at a given pos/face/channel
getValue(BlockState) - Method in interface net.commoble.exmachina.api.StaticProperty.BakedStaticProperty
  Returns double value for a given blockstate of the associated Block.
getValue(LevelReader, BlockPos, BlockState) - Method in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
getValue(LevelReader, BlockPos, BlockState) - Method in interface net.commoble.exmachina.api.DynamicProperty
  Returns double value of this property given the provided context..
graphListener() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `graphListener` record component.
graphListener() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns the value of the `graphListener` record component.
groupedNodes() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Returns the value of the `groupedNodes` record component.

## H

hashCode() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.Channel.Single
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.BlockStateConnector
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.BlockStateProperty
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.ConstantProperty
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.DirectionsConnector
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.UnionConnector
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.MechanicalConnection
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.MechanicalState
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.NodeShape.Side
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.NodeShape.SideSide
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.StateWirer
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.CommonConfig
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.ServerConfig
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns a hash code value for this object.
hashCode() - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
  Returns a hash code value for this object.
hasKey(SignalGraphKey) - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns whether this graph has a node at the given SignalGraphKey.
HOLDER - Static variable in class net.commoble.exmachina.api.MechanicalNodeStates
  Holder for mechanical node states

## I

id(String) - Static method in class net.commoble.exmachina.internal.ExMachina
  Returns ResourceLocation of exmachina:${name}.
IGNORE_VANILLA_SIGNAL - Static variable in class net.commoble.exmachina.api.ExMachinaTags.Blocks
  If a block is tagged with the exmachina:ignore_vanilla_signal block tag, then when the signal grapher is determining whether a block outputs signal to the graph, it will NOT read signal from that block.
ignoreVanillaSignal(LevelReader) - Method in record class net.commoble.exmachina.api.StateWirer
  Returns true if a signal graph should ignore vanilla redstone signal emitted by this block.
inertia() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns the value of the `inertia` record component.
inertia() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `inertia` record component.
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.Channel.Redstone
  The Redstone Channel Instance
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
  Singleton instance of AllDirectionsConnector
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
  Singleton instance of DefaultSource
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.content.NoneConnector
  Singleton instance of NoneConnector
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
  Singleton instance of the NoneDynamicProperty
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
  the instance
INSTANCE - Enum constant in enum class net.commoble.exmachina.api.content.NoneTransmitter
  Singleton instance of NoneSource
INSTANCE - Enum constant in enum class net.commoble.exmachina.internal.mechanical.MechanicalComponentBaker
  the Mechanical Component Baker
INSTANCE - Enum constant in enum class net.commoble.exmachina.internal.power.EmptyCircuit
  Singleton instance of the EmptyCircuit
invalidateCircuit(BlockPos) - Method in interface net.commoble.exmachina.api.CircuitManager
  Forcibly invalidate a circuit.
invalidateCircuit(BlockPos) - Method in class net.commoble.exmachina.internal.power.LevelCircuitManager
inverseRatio() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns the value of the `inverseRatio` record component.
inversion(Direction, Direction) - Static method in enum class net.commoble.exmachina.api.Parity
  Returns Parity which will invert rotation in a way that appears correct for interlocking gears on the two given faces.
invertHorizontalFacing() - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  Returns the value of the `invertHorizontalFacing` record component.
isBlockInAnyGraph(ServerLevel, BlockPos, Collection<SignalGraph>) - Static method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns true if any of the provided graphs contain a transmission node at the given blockpos.
isDirty() - Method in class net.commoble.exmachina.internal.mechanical.MechanicalGraphBuffer
isDirty() - Method in class net.commoble.exmachina.internal.power.LevelCircuitManager
isDirty() - Method in class net.commoble.exmachina.internal.signal.SignalGraphBuffer
isPresent() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns true if this is a real component (not empty/invalid).
isPresent() - Method in interface net.commoble.exmachina.api.Circuit
  Returns Whether this circuit has any valid components..
isPresent() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns Whether this is a valid component..
isPresent() - Method in interface net.commoble.exmachina.api.Connector.BlockConnector
  Returns true if this BlockConnector is not invalid/empty.
isPresent() - Method in interface net.commoble.exmachina.api.Connector
  Returns whether this is a valid Connector.
isPresent() - Method in interface net.commoble.exmachina.api.Connector.StateConnector
  Returns true if this is a real StateConnector (not invalid/empty).
isPresent() - Method in record class net.commoble.exmachina.api.content.ConstantProperty
isPresent() - Method in enum class net.commoble.exmachina.api.content.NoneConnector
isPresent() - Method in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
isPresent() - Method in record class net.commoble.exmachina.api.content.UnionConnector
isPresent() - Method in interface net.commoble.exmachina.api.DynamicProperty
  Returns boolean indicating whether this property exists. If false, dynamic values will not be checked for the associated block. Consider using `NoneDynamicProperty.INSTANCE` instead of overriding this..
isPresent() - Method in interface net.commoble.exmachina.api.MechanicalBlockComponent
  Returns true if this is a "real" component, false if this is the EMPTY component (e.g. because validation failed).
isPresent() - Method in interface net.commoble.exmachina.api.MechanicalStateComponent
  Returns true if this isn't the EMPTY component.
isPresent() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns true if this is a real (non-empty) component.
isPresent() - Method in interface net.commoble.exmachina.api.StaticProperty.BakedStaticProperty
  Returns true if this is a real BakedStaticProperty (not empty/invalid).
isPresent() - Method in interface net.commoble.exmachina.api.StaticProperty
  Returns whether blocks with this property have this property.
isPresent() - Method in class net.commoble.exmachina.internal.power.CircuitImpl
isPresent() - Method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
isValid() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns if false, gear ratio is non-positive and the graph should be zeroed.
isValidFor(MechanicalGraphKey) - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Returns true if this node key is compatible with some connection request given the preferred node key.
isValidFor(NodeShape) - Method in enum class net.commoble.exmachina.api.NodeShape.Cube
isValidFor(NodeShape) - Method in interface net.commoble.exmachina.api.NodeShape
  Returns true if this targeted NodeShape is usable when a preferred node is requested for a connection.
isValidFor(NodeShape) - Method in record class net.commoble.exmachina.api.NodeShape.Side
isValidFor(NodeShape) - Method in record class net.commoble.exmachina.api.NodeShape.SideSide
isValidFor(SignalGraphKey) - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns true if this node exists at the position of a preferred node and the nodeshapes and channels are compatible.

## K

KEY - Static variable in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
  exmachina:connector_type / exmachina:all_directions
KEY - Static variable in record class net.commoble.exmachina.api.content.BlockStateConnector
  exmachina:connector_type / exmachina:blockstate
KEY - Static variable in record class net.commoble.exmachina.api.content.BlockStateProperty
  exmachina:static_property_type / exmachina:blockstate
KEY - Static variable in record class net.commoble.exmachina.api.content.ConstantProperty
  exmachina:constant_property_type / exmachina:constant
KEY - Static variable in record class net.commoble.exmachina.api.content.CubeSignalComponent
  exmachina:signal_component_type / exmachina:cube
KEY - Static variable in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
  exmachina:signal_source_type / exmachina:default
KEY - Static variable in record class net.commoble.exmachina.api.content.DirectionsConnector
  exmachina:connector_type / exmachina:directions
KEY - Static variable in record class net.commoble.exmachina.api.content.FloorSignalComponent
  exmachina:signal_source_type / exmachina:floor
KEY - Static variable in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  exmachina:mechanical_component / exmachina:multipart
KEY - Static variable in enum class net.commoble.exmachina.api.content.NoneConnector
  exmachina:connector_type / exmachina:none
KEY - Static variable in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
  exmachina:dynamic_property_type / exmachina:none
KEY - Static variable in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
  exmachina:mechanical_component_type / exmachina:none
KEY - Static variable in enum class net.commoble.exmachina.api.content.NoneTransmitter
  exmachina:signal_component_type / exmachina:none
KEY - Static variable in record class net.commoble.exmachina.api.content.UnionConnector
  exmachina:connector_type / exmachina:union
KEY - Static variable in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  exmachina:mechanical_component / exmachina:variants
KEY - Static variable in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
KEY - Static variable in class net.commoble.exmachina.api.MechanicalNodeStates
  neoforge:attachment_type / exmachina:mechanical_node_states

## L

LevelCircuitManager - Class in net.commoble.exmachina.internal.power
  Transient cache of power graph circuits for a given ServerLevel
levelKey() - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Returns the value of the `levelKey` record component.
levelKey() - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns the value of the `levelKey` record component.

## M

machineCycleTicks() - Method in record class net.commoble.exmachina.internal.ServerConfig
  Returns the value of the `machineCycleTicks` record component.
makeNodes(ResourceKey<Level>, BlockGetter, BlockPos, BlockState, Direction) - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  make nodes for a given attachment side and context
MAP_CODEC - Static variable in class net.commoble.exmachina.api.MechanicalNodeStates
  MapCodec for the attachment map
markNeedingDynamicUpdate() - Method in interface net.commoble.exmachina.api.Circuit
  Mark a circuit as needing to read data from its dynamic components.
markNeedingDynamicUpdate() - Method in class net.commoble.exmachina.internal.power.CircuitImpl
markNeedingDynamicUpdate() - Method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
Maths - Class in net.commoble.exmachina.internal.util
  Extra math utils
max(SignalStrength) - Method in enum class net.commoble.exmachina.api.SignalStrength
  Combines another SignalStrength with this one and returns the stronger of the two.
maxMechanicalGraphSize() - Method in record class net.commoble.exmachina.internal.CommonConfig
  Returns the value of the `maxMechanicalGraphSize` record component.
maxPowerGraphSize() - Method in record class net.commoble.exmachina.internal.CommonConfig
  Returns the value of the `maxPowerGraphSize` record component.
maxSignalGraphSize() - Method in record class net.commoble.exmachina.internal.CommonConfig
  Returns the value of the `maxSignalGraphSize` record component.
MECHANICAL_COMPONENT - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the datapack Registry for MechanicalComponents.
MECHANICAL_COMPONENT_TYPE - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the static registry for MechanicalComponent MapCodecs.
MECHANICAL_GRAPH_UPDATE_KEY - Static variable in class net.commoble.exmachina.api.ExMachinaGameEvents
  minecraft:game_event / exmachina:mechanical_graph_update
MechanicalBlockComponent - Interface in net.commoble.exmachina.api
  Cached and validated MechanicalComponent for the block the component is assigned to.
MechanicalBlockState - Record Class in net.commoble.exmachina.internal.mechanical
  Cached BlockState + its associated MechanicalStateComponent
MechanicalBlockState(BlockState, MechanicalStateComponent) - Constructor for record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Creates an instance of a `MechanicalBlockState` record class.
MechanicalComponent - Interface in net.commoble.exmachina.api
  A MechanicalComponent is a mechanical graph component assignable to Blocks, which
MechanicalComponentBaker - Enum Class in net.commoble.exmachina.internal.mechanical
  Cache of mechanical graph components.
MechanicalConnection - Record Class in net.commoble.exmachina.api
  Represents properties of some connection from one mechanical node to another.
MechanicalConnection(Parity, int) - Constructor for record class net.commoble.exmachina.api.MechanicalConnection
  Creates an instance of a `MechanicalConnection` record class.
MechanicalGraph - Record Class in net.commoble.exmachina.internal.mechanical
  Represents a mechanical graph of connected nodes
MechanicalGraph(Map<MechanicalGraph.GearGroup, Map<LevelAccessor, List<MechanicalGraph.KeyedNode>>>, Map<MechanicalGraphKey, MechanicalGraph.KeyedNode>, double) - Constructor for record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Creates an instance of a `MechanicalGraph` record class.
MechanicalGraph.GearRatio - Record Class in net.commoble.exmachina.internal.mechanical
  Cached values for a gear fraction
MechanicalGraphBuffer - Class in net.commoble.exmachina.internal.mechanical
  Buffer in which mechanical graph updates in serverlevels are enqueued.
MechanicalGraphKey - Record Class in net.commoble.exmachina.api
  Unique keys of nodes in mechanical graphs.
MechanicalGraphKey(ResourceKey<Level>, BlockPos, NodeShape) - Constructor for record class net.commoble.exmachina.api.MechanicalGraphKey
  Creates an instance of a `MechanicalGraphKey` record class.
MechanicalNode - Record Class in net.commoble.exmachina.api
  Represents a node in the mechanical graph.
MechanicalNode(NodeShape, double, double, double, double, Map<MechanicalGraphKey, MechanicalConnection>, BiConsumer<LevelAccessor, MechanicalState>) - Constructor for record class net.commoble.exmachina.api.MechanicalNode
  Creates an instance of a `MechanicalNode` record class.
MechanicalNodeStates - Class in net.commoble.exmachina.api
  Data attachment intended to be used for blockentities which use the exmachina:blockstate mechanical component or similar components which automatically save mechanical state into arbitrary blockentities instead of having the blockentity implement saving manually.
MechanicalState - Record Class in net.commoble.exmachina.api
  Representation of a mechanical update provided to a node in the mechanical graph
MechanicalState(double, double) - Constructor for record class net.commoble.exmachina.api.MechanicalState
  Creates an instance of a `MechanicalState` record class.
MechanicalStateComponent - Interface in net.commoble.exmachina.api
  MechanicalComponent baked and validated for a specific state of the component's associated block.
MODID - Static variable in class net.commoble.exmachina.internal.ExMachina
  Mod ID
multipart() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Returns the value of the `multipart` record component.
MultipartMechanicalComponent - Record Class in net.commoble.exmachina.api.content
  General-purpose MechanicalComponent which has a format similar to multipart blockstate defintions, assigning nodes to blockstates by comparing states to property-value predicate Cases.
MultipartMechanicalComponent(boolean, List<MultipartMechanicalComponent.ApplyWhen>) - Constructor for record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Creates an instance of a `MultipartMechanicalComponent` record class.
MultipartMechanicalComponent.ApplyWhen - Record Class in net.commoble.exmachina.api.content
  Component of MultipartMechanicalComponent definitions, analogous to the "when" and "apply" blocks in a blockstate json.
MultipartMechanicalComponent.Case - Record Class in net.commoble.exmachina.api.content
  Component of Multipart definitions representing a blockstate predicate.
MultipartMechanicalComponent.OrCase - Record Class in net.commoble.exmachina.api.content
  Component of Multipart definitions' 'when' blocks.
multiply(Parity) - Method in enum class net.commoble.exmachina.api.Parity
  Returns Parity of this parity multiplied with another parity.

## N

NEGATIVE - Enum constant in enum class net.commoble.exmachina.api.Parity
  Indicates a node's rotation relative to its axis is the opposite of another node's relative to that node's axis; e.g.
negativeCounterTorque() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns the value of the `negativeCounterTorque` record component.
negativeCounterTorque() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `negativeCounterTorque` record component.
neighborShape() - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Returns the value of the `neighborShape` record component.
net.commoble.exmachina.api - package net.commoble.exmachina.api
net.commoble.exmachina.api.content - package net.commoble.exmachina.api.content
net.commoble.exmachina.internal - package net.commoble.exmachina.internal
net.commoble.exmachina.internal.mechanical - package net.commoble.exmachina.internal.mechanical
net.commoble.exmachina.internal.power - package net.commoble.exmachina.internal.power
net.commoble.exmachina.internal.signal - package net.commoble.exmachina.internal.signal
net.commoble.exmachina.internal.util - package net.commoble.exmachina.internal.util
NO_AUTOMATIC_MECHANICAL_UPDATES - Static variable in class net.commoble.exmachina.api.ExMachinaTags.Blocks
  If a block is tagged with the exmachina:no_automatic_mechanical_updates block tag, block updates which result in the new block being in the tag will not trigger mechanical graph updates on that block or its neighbors, and block updates on adjacent blocks will not trigger mechanical updates on that block.
NodeShape - Interface in net.commoble.exmachina.api
  Representation of the volume or connectibility of a graph node
NodeShape.Cube - Enum Class in net.commoble.exmachina.api
  NodeShape which encompasses an entire BlockPos
NodeShape.Side - Record Class in net.commoble.exmachina.api
  NodeShape which represents a node on the internal face of a blockpos
NodeShape.SideSide - Record Class in net.commoble.exmachina.api
  NodeShape which represents a node which lies on the internal face of a BlockPos but on touches one of its four orthagonal neighbors
nodesInGraph() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Returns the value of the `nodesInGraph` record component.
nodesInGraph() - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns the value of the `nodesInGraph` record component.
nodesUpdatingSelf() - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns the value of the `nodesUpdatingSelf` record component.
NoneConnector - Enum Class in net.commoble.exmachina.api.content
  Connector for a block that cannot connect to or be part of a circuit.
NoneDynamicProperty - Enum Class in net.commoble.exmachina.api.content
  DynamicProperty representing an absent DynamicProperty.
NoneMechanicalComponent - Enum Class in net.commoble.exmachina.api.content
  MechanicalComponent which provides no power and connects to no graph.
NoneTransmitter - Enum Class in net.commoble.exmachina.api.content
  SignalComponent which provides no power and connects to no graph.

## O

of(double) - Static method in record class net.commoble.exmachina.api.content.ConstantProperty
  Returns ConstantProperty with the given value.
of(Fraction) - Static method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns GearRatio using the given fraction, or the ZERO ratio if fraction is zero or too big to square.
ofCube() - Static method in interface net.commoble.exmachina.api.NodeShape
  Returns NodeShape which encompasses an entire BlockPos.
offset() - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
  Returns the value of the `offset` record component.
ofSide(Direction) - Static method in interface net.commoble.exmachina.api.NodeShape
  Returns NodeShape which represents a node on the internal face of a blockpos.
ofSideSide(Direction, Direction) - Static method in interface net.commoble.exmachina.api.NodeShape
  Returns NodeShape which represents a node which lies on the internal face of a BlockPos but on touches one of its four orthagonal neighbors.
onBlockUpdate(BlockState, BlockPos) - Method in interface net.commoble.exmachina.api.CircuitManager
  Notifies the circuit manager that a block at this position has updated.
onBlockUpdate(BlockState, BlockPos) - Method in class net.commoble.exmachina.internal.power.LevelCircuitManager
or(MultipartMechanicalComponent.OrCase, RawNode, RawNode...) - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Builder-like factory for datageneration, using an OR-case when.
OrCase(List<Either<MultipartMechanicalComponent.OrCase, MultipartMechanicalComponent.Case>>) - Constructor for record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Creates an instance of a `OrCase` record class.

## P

pairListMap(Codec<K>, Codec<V>) - Static method in class net.commoble.exmachina.internal.util.CodecHelper
  Creates a codec which encodes a Map as a list of pairs, averting unboundedMap's requirement that key codecs are string-serializable.
parity() - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Returns the value of the `parity` record component.
parity() - Method in record class net.commoble.exmachina.api.MechanicalConnection
  Returns the value of the `parity` record component.
Parity - Enum Class in net.commoble.exmachina.api
  Representation of relative direction of rotation between mechanical nodes
parse(String) - Static method in interface net.commoble.exmachina.api.Channel
  Attempts to parse a Channel as a String
parseVariantKey(StateDefinition<Block, BlockState>, String) - Static method in class net.commoble.exmachina.internal.util.StateReader
  This is based on how blockstate jsons are parsed in ModelBakery; we need it to be available for server data.
pos() - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Returns the value of the `pos` record component.
pos() - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns the value of the `pos` record component.
POSITIVE - Enum constant in enum class net.commoble.exmachina.api.Parity
  Indicates a node's rotation relative to its axis is the same as another node's relative to that node's axis; e.g.
positiveCounterTorque() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns the value of the `positiveCounterTorque` record component.
positiveCounterTorque() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `positiveCounterTorque` record component.
power() - Method in record class net.commoble.exmachina.api.MechanicalState
  Returns the value of the `power` record component.
power() - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns the value of the `power` record component.
powerReaders() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns the value of the `powerReaders` record component.
preBake(RegistryAccess) - Method in enum class net.commoble.exmachina.internal.mechanical.MechanicalComponentBaker
  Bakes block components.
preBake(RegistryAccess) - Method in class net.commoble.exmachina.internal.power.ComponentBaker
  Does some initial caching after datapack registries load

## R

ratio() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns the value of the `ratio` record component.
RawConnection(Optional<Direction>, NodeShape, Parity, int) - Constructor for record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Creates an instance of a `RawConnection` record class.
RawNode - Record Class in net.commoble.exmachina.api.content
  Relative node definition used by `VariantsMechanicalComponent` and `MultipartMechanicalComponent`
RawNode(NodeShape, double, double, double, double, List<RawNode.RawConnection>) - Constructor for record class net.commoble.exmachina.api.content.RawNode
  Creates an instance of a `RawNode` record class.
RawNode.RawConnection - Record Class in net.commoble.exmachina.api.content
  Relative connection from a RawNode to a neighbor node
receivesPower() - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
  Returns the value of the `receivesPower` record component.
receivesPower() - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
  Returns the value of the `receivesPower` record component.
receivesPower() - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  Returns the value of the `receivesPower` record component.
redstone() - Static method in interface net.commoble.exmachina.api.Channel
  Returns the Redstone channel.
register(String, ModConfig.Type, Function<ModConfigSpec.Builder, T>) - Static method in class net.commoble.exmachina.internal.util.ConfigHelper
  Register a config using a default config filename for your mod.
register(String, ModConfig.Type, Function<ModConfigSpec.Builder, T>, String) - Static method in class net.commoble.exmachina.internal.util.ConfigHelper
  Register a config using a custom filename.

## S

safeMultiplyFraction(Fraction, Fraction, Fraction) - Static method in class net.commoble.exmachina.internal.util.Maths
  Attempts to multiply fractions, returning a fallback in case of overflow exception
save() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Returns the value of the `save` record component.
save() - Method in record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
  Returns the value of the `save` record component.
save() - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Returns the value of the `save` record component.
scheduleMechanicalGraphUpdate(LevelAccessor, BlockPos) - Static method in class net.commoble.exmachina.api.ExMachinaGameEvents
  Schedules a mechanical graph update to occur.
scheduleSignalGraphUpdate(LevelAccessor, BlockPos) - Static method in class net.commoble.exmachina.api.ExMachinaGameEvents
  Schedules a signal graph update to occur.
SERVER_CONFIG - Static variable in class net.commoble.exmachina.internal.ExMachina
  config/exmachina-server.toml
ServerConfig - Record Class in net.commoble.exmachina.internal
ServerConfig(ModConfigSpec.IntValue) - Constructor for record class net.commoble.exmachina.internal.ServerConfig
  Creates an instance of a `ServerConfig` record class.
shape() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns the value of the `shape` record component.
shape() - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Returns the value of the `shape` record component.
shape() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `shape` record component.
shape() - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns the value of the `shape` record component.
shape() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns the value of the `shape` record component.
side() - Method in record class net.commoble.exmachina.api.NodeShape.SideSide
  Returns the value of the `side` record component.
Side(Direction) - Constructor for record class net.commoble.exmachina.api.NodeShape.Side
  Creates an instance of a `Side` record class.
SideSide(Direction, Direction) - Constructor for record class net.commoble.exmachina.api.NodeShape.SideSide
  Creates an instance of a `SideSide` record class.
SIGNAL_COMPONENT - Static variable in class net.commoble.exmachina.api.ExMachinaDataMaps
  DataMapType for the exmachina:signal_component block data map used by the signal graph
SIGNAL_COMPONENT_TYPE - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the static Registry for SignalComponent MapCodecs.
SIGNAL_GRAPH_UPDATE_KEY - Static variable in class net.commoble.exmachina.api.ExMachinaGameEvents
  minecraft:game_event / exmachina:signal_graph_update
SignalComponent - Interface in net.commoble.exmachina.api
  A SignalComponent is a signal graph component assignable to Blocks, which
SignalGraph - Record Class in net.commoble.exmachina.internal.signal
  Represents a graph of connected signal nodes.
SignalGraph(Map<SignalGraphKey, TransmissionNode>, Map<ServerLevel, Set<BlockPos>>, Map<ServerLevel, Set<BlockPos>>, int) - Constructor for record class net.commoble.exmachina.internal.signal.SignalGraph
  Creates an instance of a `SignalGraph` record class.
SignalGraphBuffer - Class in net.commoble.exmachina.internal.signal
  Buffer in which signal graph updates are enqueued.
SignalGraphKey - Record Class in net.commoble.exmachina.api
  Uniquely identifiable key in the signal graph
SignalGraphKey(ResourceKey<Level>, BlockPos, NodeShape, Channel) - Constructor for record class net.commoble.exmachina.api.SignalGraphKey
  Creates an instance of a `SignalGraphKey` record class.
SignalStrength - Enum Class in net.commoble.exmachina.api
  Indicator of strong (conducting) vs weak (nonconducting) redstone power
SimpleMechanicalStateComponent - Record Class in net.commoble.exmachina.api.content
  MechanicalStateComponent used by `VariantsMechanicalComponent` and `MultipartMechanicalComponent` to provide mechanical nodes
SimpleMechanicalStateComponent(boolean, List<RawNode>) - Constructor for record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
  Creates an instance of a `SimpleMechanicalStateComponent` record class.
single(DyeColor) - Static method in interface net.commoble.exmachina.api.Channel
  Retrieves the color channel for a given DyeColor.
Single(DyeColor) - Constructor for record class net.commoble.exmachina.api.Channel.Single
  Creates an instance of a `Single` record class.
singleOrPluralCodec(Codec<T>) - Static method in class net.commoble.exmachina.internal.util.CodecHelper
  Creates a list codec that serializes as a single object when size == 1
SIXTEEN_COLORS - Static variable in interface net.commoble.exmachina.api.Channel
  Set of the sixteen color-channels
source() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns the value of the `source` record component.
squareDivisor() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns the value of the `squareDivisor` record component.
squareMultiplier() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns the value of the `squareMultiplier` record component.
state() - Method in record class net.commoble.exmachina.api.StateWirer
  Returns the value of the `state` record component.
state() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Returns the value of the `state` record component.
StateComponent - Record Class in net.commoble.exmachina.api
  A CircuitComponent, but baked for a particular BlockState
StateComponent(Connector.StateConnector, double, double, DynamicProperty, DynamicProperty) - Constructor for record class net.commoble.exmachina.api.StateComponent
  Creates an instance of a `StateComponent` record class.
StateReader - Class in net.commoble.exmachina.internal.util
  Utility for reading a blockstate predicate in blockstate-file format
StateWirer - Record Class in net.commoble.exmachina.api
  SignalComponent bound with its providing BlockState at some position
StateWirer(BlockState, SignalComponent) - Constructor for record class net.commoble.exmachina.api.StateWirer
  Creates an instance of a `StateWirer` record class.
STATIC_PROPERTY_TYPE - Static variable in class net.commoble.exmachina.api.ExMachinaRegistries
  Registry key of the static Registry for StaticProperty MapCodecs.
staticLoad() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns the value of the `staticLoad` record component.
staticLoad() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns the value of the `staticLoad` record component.
staticLoad() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns the value of the `staticLoad` record component.
StaticProperty - Interface in net.commoble.exmachina.api
  Static Properties are assigned to blocks as part of their circuit component definition.
StaticProperty.BakedStaticProperty - Interface in net.commoble.exmachina.api
  StaticProperty cached for a particular Block
staticSource() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns the value of the `staticSource` record component.
staticSource() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns the value of the `staticSource` record component.
staticSource() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns the value of the `staticSource` record component.
STREAM_CODEC - Static variable in class net.commoble.exmachina.api.MechanicalNodeStates
  StreamCodec for the attachment map
STREAM_CODEC - Static variable in record class net.commoble.exmachina.api.MechanicalState
  codec but stream
STREAM_CODEC - Static variable in interface net.commoble.exmachina.api.NodeShape
  codec but stream
STRONG - Enum constant in enum class net.commoble.exmachina.api.SignalStrength
  Strong (conducting) redstone power

## T

teeth() - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Returns the value of the `teeth` record component.
teeth() - Method in record class net.commoble.exmachina.api.MechanicalConnection
  Returns the value of the `teeth` record component.
tick(MinecraftServer) - Method in class net.commoble.exmachina.internal.mechanical.MechanicalGraphBuffer
  Invoked at the end of each server tick to proc mechanical graph updates
tick(MinecraftServer) - Method in class net.commoble.exmachina.internal.signal.SignalGraphBuffer
  Invoked at the end of each server tick to run enqueued signal graph updates
torque() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns the value of the `torque` record component.
torque() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns the value of the `torque` record component.
toString() - Method in record class net.commoble.exmachina.api.BlockComponent
  Returns a string representation of this record class.
toString() - Method in enum class net.commoble.exmachina.api.Channel.Redstone
toString() - Method in record class net.commoble.exmachina.api.Channel.Single
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.CircuitComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.BlockStateConnector
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.BlockStateProperty
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.ConstantProperty
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.DirectionsConnector
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.Case
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.OrCase
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.RawNode.RawConnection
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.RawNode
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.SimpleMechanicalStateComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.UnionConnector
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.MechanicalConnection
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.MechanicalGraphKey
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.MechanicalNode
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.MechanicalState
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.NodeShape.Side
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.NodeShape.SideSide
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.SignalGraphKey
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.StateComponent
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.StateWirer
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.api.TransmissionNode
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.CommonConfig
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalBlockState
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.ServerConfig
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Returns a string representation of this record class.
toString() - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
  Returns a string representation of this record class.
TransmissionNode - Record Class in net.commoble.exmachina.api
  Properties of a `SignalComponent` graph node.
TransmissionNode(NodeShape, ToIntFunction<LevelReader>, Set<Direction>, Set<SignalGraphKey>, BiFunction<LevelAccessor, Integer, Map<Direction, SignalStrength>>) - Constructor for record class net.commoble.exmachina.api.TransmissionNode
  Creates an instance of a `TransmissionNode` record class.

## U

UnionConnector - Record Class in net.commoble.exmachina.api.content
  Connector providing the union of the position sets of a list of subconnectors.
UnionConnector(List<Connector>) - Constructor for record class net.commoble.exmachina.api.content.UnionConnector
  Creates an instance of a `UnionConnector` record class.
updateListeners(Map<Fraction, MechanicalGraph.GearRatio>) - Method in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph
  Informs all mechanical update listeners of their new power and velocity values
updateListeners(MinecraftServer) - Method in record class net.commoble.exmachina.internal.signal.SignalGraph
  Updates all SignalComponent listeners and determines which positions adjacent to the graph should receive neighbor updates.
updateSelfFromNeighborsAfterGraphUpdate(LevelReader, BlockState, BlockPos) - Method in record class net.commoble.exmachina.api.content.CubeSignalComponent
updateSelfFromNeighborsAfterGraphUpdate(LevelReader, BlockState, BlockPos) - Method in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
updateSelfFromNeighborsAfterGraphUpdate(LevelReader, BlockState, BlockPos) - Method in record class net.commoble.exmachina.api.content.FloorSignalComponent
updateSelfFromNeighborsAfterGraphUpdate(LevelReader, BlockState, BlockPos) - Method in record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
updateSelfFromNeighborsAfterGraphUpdate(LevelReader, BlockState, BlockPos) - Method in interface net.commoble.exmachina.api.SignalComponent
  If true, neighborChanged will be invoked on this block after a graph update occurs (default false)

## V

value() - Method in record class net.commoble.exmachina.api.content.ConstantProperty
  Returns the value of the `value` record component.
value() - Method in enum class net.commoble.exmachina.api.Parity
  Returns int sign of the parity (0, +1, or -1).
valueOf(String) - Static method in enum class net.commoble.exmachina.api.Channel.Redstone
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.content.NoneConnector
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.content.NoneTransmitter
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.NodeShape.Cube
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.Parity
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.api.SignalStrength
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.internal.mechanical.MechanicalComponentBaker
  Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
  Returns the enum constant of this class with the specified name.
values() - Static method in enum class net.commoble.exmachina.api.Channel.Redstone
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.content.AllDirectionsConnector
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.content.DefaultSignalComponent
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.content.NoneConnector
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.content.NoneDynamicProperty
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.content.NoneMechanicalComponent
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.content.NoneTransmitter
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Method in record class net.commoble.exmachina.api.content.UnionConnector
  Returns the value of the `values` record component.
values() - Static method in enum class net.commoble.exmachina.api.NodeShape.Cube
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.Parity
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.api.SignalStrength
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.internal.mechanical.MechanicalComponentBaker
  Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class net.commoble.exmachina.internal.power.EmptyCircuit
  Returns an array containing the constants of this enum class, in the order they are declared.
variants() - Method in record class net.commoble.exmachina.api.content.BlockStateConnector
  Returns the value of the `variants` record component.
variants() - Method in record class net.commoble.exmachina.api.content.BlockStateProperty
  Returns the value of the `variants` record component.
variants() - Method in record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Returns the value of the `variants` record component.
VariantsMechanicalComponent - Record Class in net.commoble.exmachina.api.content
  General-purpose MechanicalComponent which defines static mechanical nodes per-blockstate similar to how a blockstate file assigns model variants.
VariantsMechanicalComponent(boolean, Map<String, List<RawNode>>) - Constructor for record class net.commoble.exmachina.api.content.VariantsMechanicalComponent
  Creates an instance of a `VariantsMechanicalComponent` record class.
VariantsMechanicalComponent.VariantBuilder - Class in net.commoble.exmachina.api.content
  Datagen helper for building a variant matching multiple properties' values

## W

WallFloorCeilingSignalComponent - Record Class in net.commoble.exmachina.api.content
  SignalComponent intended for `FaceAttachedHorizontalDirectionalBlock`s such as buttons and levers.
WallFloorCeilingSignalComponent(boolean, boolean) - Constructor for record class net.commoble.exmachina.api.content.WallFloorCeilingSignalComponent
  Creates an instance of a `WallFloorCeilingSignalComponent` record class.
WEAK - Enum constant in enum class net.commoble.exmachina.api.SignalStrength
  Weak (non-conducting) redstone power
when() - Method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Returns the value of the `when` record component.
when(MultipartMechanicalComponent.Case, RawNode, RawNode...) - Static method in record class net.commoble.exmachina.api.content.MultipartMechanicalComponent.ApplyWhen
  Builder-like factory for datageneration, using a single-case when.
WireIgnoringSignalGetter - Record Class in net.commoble.exmachina.internal.signal
  delegating SignalGetter which ignores signal from blocks in the exmachina:ignore_vanilla_signal block tag
WireIgnoringSignalGetter(LevelReader, Function<BlockPos, StateWirer>) - Constructor for record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
  Creates an instance of a `WireIgnoringSignalGetter` record class.
wirerLookup() - Method in record class net.commoble.exmachina.internal.signal.WireIgnoringSignalGetter
  Returns the value of the `wirerLookup` record component.

## Z

zero() - Static method in record class net.commoble.exmachina.api.content.ConstantProperty
  Returns ConstantProperty with value 0.
ZERO - Enum constant in enum class net.commoble.exmachina.api.Parity
  Indicates no rotation is occurring
ZERO - Static variable in record class net.commoble.exmachina.api.MechanicalState
  MechanicalState constant for zero power and velocity
ZERO - Static variable in record class net.commoble.exmachina.internal.mechanical.MechanicalGraph.GearRatio

A B C D E F G H I K L M N O P R S T U V W Z
All Classes and Interfaces|All Packages|Constant Field Values