Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/sn4k3/UVtools.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'UVtools.Core/FileFormats/IFileFormat.cs')
-rw-r--r--UVtools.Core/FileFormats/IFileFormat.cs29
1 files changed, 25 insertions, 4 deletions
diff --git a/UVtools.Core/FileFormats/IFileFormat.cs b/UVtools.Core/FileFormats/IFileFormat.cs
index f2ff326..6329e9b 100644
--- a/UVtools.Core/FileFormats/IFileFormat.cs
+++ b/UVtools.Core/FileFormats/IFileFormat.cs
@@ -41,6 +41,11 @@ namespace UVtools.Core.FileFormats
FileFormat.PrintParameterModifier[] PrintParameterModifiers { get; }
/// <summary>
+ /// Gets the available <see cref="FileFormat.PrintParameterModifier"/> per layer
+ /// </summary>
+ FileFormat.PrintParameterModifier[] PrintParameterPerLayerModifiers { get; }
+
+ /// <summary>
/// Gets the file filter for open and save dialogs
/// </summary>
string FileFilter { get; }
@@ -76,8 +81,6 @@ namespace UVtools.Core.FileFormats
/// </summary>
Mat[] Thumbnails { get; set; }
-
-
/// <summary>
/// Gets the cached layers into compressed bytes
/// </summary>
@@ -127,13 +130,18 @@ namespace UVtools.Core.FileFormats
/// </summary>
float TotalHeight { get; }
- #region Universal Properties
-
/// <summary>
/// Gets the last layer index
/// </summary>
uint LastLayerIndex { get; }
+ #region Universal Properties
+
+ /// <summary>
+ /// Gets if this format support per layer override settings
+ /// </summary>
+ bool SupportPerLayerSettings { get; }
+
/// <summary>
/// Gets the number of layers present in this file
/// </summary>
@@ -145,6 +153,11 @@ namespace UVtools.Core.FileFormats
ushort BottomLayerCount { get; set; }
/// <summary>
+ /// Gets the number of normal layer count
+ /// </summary>
+ uint NormalLayerCount { get; }
+
+ /// <summary>
/// Gets or sets the initial exposure time for <see cref="BottomLayerCount"/> in seconds
/// </summary>
float BottomExposureTime { get; set; }
@@ -206,6 +219,11 @@ namespace UVtools.Core.FileFormats
float PrintTime { get; }
/// <summary>
+ /// Gets the estimate print time in seconds, if print doesn't support it it will be calculated
+ /// </summary>
+ float PrintTimeOrComputed { get; }
+
+ /// <summary>
/// Gets the estimate print time in hours
/// </summary>
float PrintTimeHours { get; }
@@ -375,6 +393,7 @@ namespace UVtools.Core.FileFormats
T GetInitialLayerValueOrNormal<T>(uint layerIndex, T initialLayerValue, T normalLayerValue);
void RefreshPrintParametersModifiersValues();
+ void RefreshPrintParametersPerLayerModifiersValues(uint layerIndex);
/// <summary>
/// Gets the value attributed to <see cref="FileFormat.PrintParameterModifier"/>
@@ -393,6 +412,8 @@ namespace UVtools.Core.FileFormats
byte SetValuesFromPrintParametersModifiers();
+ void EditPrintParameters(OperationEditParameters operation);
+
/// <summary>
/// Rebuilds GCode based on current settings
/// </summary>