载入中...
搜索中...
未找到
MapIntegration.cpp
浏览该文件的文档.
8Result<void> MapRoadMeshPublisher::publish(const MapDocumentTarget& document, const StableId& road,
12 return eve::editing::failed<void>(EditorStatus::Conflict, RuleId("editor.map.stale-road-preview"),
21 auto published = sink.publishRoad(document.targetId().value(), road, preview.documentRevision, preview.mesh);
29MapObjectImportPlan MapObjectImporter::plan(const MapDocumentTarget& document, const StableId& layer,
45 if (record.sourceId.empty() || record.asset.empty() || !sourceIds.insert(record.sourceId).second) {
48 eve::DiagnosticCode::Conflict, RuleId("editor.map.invalid-import-object"), DiagnosticSeverity::Error,
56 eve::DiagnosticCode::Conflict, RuleId("editor.map.import-id-conflict"), DiagnosticSeverity::Error,
bool empty() const noexcept
True when no compatibility spelling has been assigned.
Definition Identity.h:374
Runtime-neutral sink receiving revision-tagged generated road meshes.
Definition MapDocument.h:71
virtual Result< void > publishRoad(const std::string &document, const StableId &road, Revision revision, const EditorValue &mesh)=0
Atomically publish or replace one generated road mesh.
UI-neutral map structure document with reversible domain operations.
Definition MapDocument.h:133
Result< DomainOperation > makeSetPlacement(const MapPlacementRecord &placement) const override
Make set placement.
Definition MapDocument.cpp:486
std::vector< MapPlacementRecord > mapPlacements() const override
Map placements.
Definition MapDocument.cpp:365
MapRoadPreviewResult previewRoad(const StableId &road, int triangleBudget=10000) const
Build a deterministic XZ road strip for viewport preview and budget diagnostics.
Definition MapDocument.cpp:563
MapObjectImportPlan plan(const MapDocumentTarget &document, const StableId &layer, const std::vector< MapObjectImportRecord > &records, const std::string &idPrefix) const
Plan stable-id placement creation without mutating the map document.
Definition MapIntegration.cpp:29
Result< void > publish(const MapDocumentTarget &document, const StableId &road, Revision expectedRevision, IMapRoadMeshSink &sink, int triangleBudget=10000) const
Generate and publish one road mesh to the supplied host sink.
Definition MapIntegration.cpp:8
RuleId diagnosticRule(const Diagnostic &diagnostic)
Return the projected editing rule, or an empty RuleId when absent.
Definition EditingResult.h:34
Diagnostic ruleDiagnostic(eve::DiagnosticCode code, RuleId rule, DiagnosticSeverity severity, std::string message)
Build a common diagnostic carrying an open editing rule identity.
Definition EditingResult.h:25
Definition MapDocument.cpp:8
@ InvalidArgument
@ Conflict
Side-effect-free batch import plan for map object placements.
Definition MapDocument.h:92
Revision documentRevision
Definition MapDocument.h:94
std::vector< DomainOperation > operations
Definition MapDocument.h:95
std::vector< EditorDiagnostic > diagnostics
Definition MapDocument.h:96
Stable object placement stored on an object layer.
Definition MapDocument.h:45