| 129 | } |
| 130 | |
| 131 | std::span<const AirportBuilding> AirportObject::getBuildingPositions() const |
| 132 | { |
| 133 | const auto* base = reinterpret_cast<const uint8_t*>(this); |
| 134 | const auto* buildingPositions = reinterpret_cast<const AirportBuilding*>(base + buildingPositionsOffset); |
| 135 | |
| 136 | const auto* firstBuildingPtr = buildingPositions; |
| 137 | auto* endBuildingPtr = firstBuildingPtr; |
| 138 | |
| 139 | while (endBuildingPtr->index != 0xFF) |
| 140 | { |
| 141 | endBuildingPtr++; |
| 142 | } |
| 143 | |
| 144 | return std::span<const AirportBuilding>(firstBuildingPtr, endBuildingPtr); |
| 145 | } |
| 146 | |
| 147 | std::span<const std::uint8_t> AirportObject::getBuildingParts(const uint8_t buildingType) const |
| 148 | { |
no outgoing calls
no test coverage detected