IIndicatorCalculationService

AUTO-GENERATED FILE – DO NOT EDIT MANUALLY

This page documents the supported public API surface only. Private, internal, benchmark, test, and implementation-detail types are intentionally omitted.

Declaration

1
public interface IIndicatorCalculationService

Summary

Core service interface for calculating placement indicators. This interface contains pure business logic without Godot dependencies.

Metadata

Namespace: GridPlacement.Core.Interfaces.Placement

Source File: cs/Core/Interfaces/Placement/IIndicatorCalculationService.cs

Assembly: GridPlacement.Core

Type: interface

Methods

CalculateIndicators

1
2
3
4
5
6
IndicatorCalculationResult CalculateIndicators(
    FootprintData footprint,
    CoreVector2I gridPosition,
    IEnumerable<PlacementRuleData> rules,
    IGridOccupancy existingOccupancy
)

Calculates indicator positions and validity for a given footprint.

Parameters

NameDescription
footprintThe footprint data to calculate indicators for
gridPositionThe grid position where the footprint is placed
rulesList of placement rules to apply
existingOccupancyCurrent grid occupancy data

Returns

Calculation result with indicator positions and validity


CalculateIndicatorCount

1
2
3
4
5
6
int CalculateIndicatorCount(
    FootprintData footprint,
    CoreVector2I gridPosition,
    IEnumerable<PlacementRuleData> rules,
    IGridOccupancy existingOccupancy
)

Calculates the number of indicators that would be created without creating them. Useful for performance optimization and UI preview.

Parameters

NameDescription
footprintThe footprint data
gridPositionThe grid position
rulesList of placement rules to apply
existingOccupancyCurrent grid occupancy data

Returns

Number of indicators that would be created


ValidatePlacement

1
2
3
4
5
6
bool ValidatePlacement(
    FootprintData footprint,
    CoreVector2I gridPosition,
    IEnumerable<PlacementRuleData> rules,
    IGridOccupancy existingOccupancy
)

Validates that a footprint can be placed at the given position.

Parameters

NameDescription
footprintThe footprint data to validate
gridPositionThe grid position to validate
rulesList of placement rules to apply
existingOccupancyCurrent grid occupancy data

Returns

True if placement is valid


GetFootprintPositions

1
2
3
4
List<CoreVector2I> GetFootprintPositions(
    FootprintData footprint,
    CoreVector2I gridPosition
)

Gets the footprint positions for a given footprint at a grid position.

Parameters

NameDescription
footprintThe footprint data
gridPositionThe grid position

Returns

List of grid positions occupied by the footprint