1
1
using ImageFunctions . Core ;
2
+ using ImageFunctions . Core . FileIO ;
2
3
using ImageFunctions . Core . Logging ;
3
4
using System . Diagnostics ;
4
5
@@ -20,8 +21,7 @@ static int Main(string[] args)
20
21
using var register = new CoreRegister ( log ) ;
21
22
var options = new Options ( register , log ) ;
22
23
using var layers = new Layers ( ) ;
23
- using var clerk = new FileClerk ( ) ;
24
- var main = new Program ( register , options , layers , clerk , log ) ;
24
+ var main = new Program ( register , options , layers , log ) ;
25
25
return main . Run ( args ) ;
26
26
}
27
27
catch ( Exception e ) {
@@ -35,12 +35,11 @@ static int Main(string[] args)
35
35
}
36
36
}
37
37
38
- internal Program ( IRegister register , Options options , ILayers layers , IFileClerk clerk , ICoreLog log )
38
+ internal Program ( IRegister register , Options options , ILayers layers , ICoreLog log )
39
39
{
40
40
Register = register ;
41
41
Options = options ;
42
42
Layers = layers ;
43
- Clerk = clerk ;
44
43
Log = log ;
45
44
}
46
45
@@ -63,9 +62,9 @@ int Run(string[] args)
63
62
64
63
//save the layers to one or more images
65
64
Log . Info ( $ "Saving image { Options . OutputName } ") ;
66
- Clerk . Location = Options . OutputName ;
65
+ using var clerk = new FileClerk ( FileIO , Options . OutputName ) ;
67
66
if ( Layers . Count > 0 ) {
68
- Options . Engine . Item . Value . SaveImage ( Layers , Clerk , Options . ImageFormat ) ;
67
+ Options . Engine . Item . Value . SaveImage ( Layers , clerk , Options . ImageFormat ) ;
69
68
}
70
69
else {
71
70
Log . Warning ( Note . NoLayersToSave ( ) ) ;
@@ -130,21 +129,21 @@ bool LoadImages()
130
129
//we're reversing the images since we're using a stack
131
130
// so the first image specified should stay on top
132
131
// and the last one on the bottom.
133
- foreach ( var i in Options . ImageFileNames . Reverse ( ) ) {
134
- if ( ! File . Exists ( i ) ) {
135
- Log . Error ( Note . CannotFindInputImage ( i ) ) ;
132
+ foreach ( var file in Options . ImageFileNames . Reverse ( ) ) {
133
+ using var clerk = new FileClerk ( FileIO , file ) ;
134
+ if ( ! File . Exists ( file ) ) {
135
+ Log . Error ( Note . CannotFindInputImage ( file ) ) ;
136
136
return false ;
137
137
}
138
- Clerk . Location = i ;
139
- Options . Engine . Item . Value . LoadImage ( Layers , Clerk ) ;
138
+ Options . Engine . Item . Value . LoadImage ( Layers , clerk ) ;
140
139
}
141
140
142
141
return true ;
143
142
}
144
143
145
- readonly IFileClerk Clerk ;
146
144
internal ILayers Layers ;
147
145
internal IRegister Register ;
148
146
internal Options Options ; //not using ICoreOptions interface to allow access to extra methods
149
147
internal ICoreLog Log ;
148
+ readonly SimpleFileIO FileIO = new ( ) ;
150
149
}
0 commit comments