93246157c7
* Fix threading bug * untangle revit * revert rhino * revert autocad * revert rest * remove event agg and rhino implementation * remove event aggr from revit * remove event aggr from autocad and civil * remove event aggr tests * remove event aggr from tekla * Remove event aggr for navis * remove event aggr from csi etabs * remove event aggr for arcgis * remove remaining pieces * push autocad to run operations on main thread * adds teklaidlemanager * bring navis idle manager back * run send on main * remove unused function --------- Co-authored-by: Dogukan Karatas <karatasdogukan@gmail.com>
33 lines
1.4 KiB
C#
33 lines
1.4 KiB
C#
using Speckle.Connectors.Common.Conversion;
|
|
using Speckle.Connectors.Common.Operations;
|
|
using Speckle.Sdk.Models;
|
|
|
|
namespace Speckle.Connectors.Common.Builders;
|
|
|
|
// POC: We might consider to put also IRootObjectBuilder interface here in same folder and create concrete classes from it in per connector.
|
|
public interface IHostObjectBuilder
|
|
{
|
|
/// <summary>
|
|
/// Build host application objects from root commit object.
|
|
/// </summary>
|
|
/// <param name="rootObject">Commit object that received from server.</param>
|
|
/// <param name="projectName">Project of the model.</param>
|
|
/// <param name="modelName">Name of the model.</param>
|
|
/// <param name="onOperationProgressed"> Action to update UI progress bar.</param>
|
|
/// <returns> List of application ids.</returns> // POC: Where we will return these ids will matter later when we target to also cache received application ids.
|
|
/// <remarks>Project and model name are needed for now to construct host app objects into related layers or filters.
|
|
/// POC: we might consider later to have HostObjectBuilderContext? that might hold all possible data we will need.</remarks>
|
|
Task<HostObjectBuilderResult> Build(
|
|
Base rootObject,
|
|
string projectName,
|
|
string modelName,
|
|
IProgress<CardProgress> onOperationProgressed,
|
|
CancellationToken cancellationToken
|
|
);
|
|
}
|
|
|
|
public record HostObjectBuilderResult(
|
|
IEnumerable<string> BakedObjectIds,
|
|
IEnumerable<ReceiveConversionResult> ConversionResults
|
|
);
|