diff options
Diffstat (limited to 'main.go')
-rw-r--r-- | main.go | 22 |
1 files changed, 16 insertions, 6 deletions
@@ -6,16 +6,25 @@ import ( "runtime" "log" "flag" + "io/ioutil" ) +type cliArgs struct { + filePath string + debugOutput bool +} + func main() { - // read command line arguments - var stlFilePath string - parseFlags(&stlFilePath) + // read command line arguments and mute log if necessary + var args cliArgs + args.read() + if !args.debugOutput { + log.SetOutput(ioutil.Discard) + } // parse STL file - stl, err := ReadBinaryStlFile(stlFilePath) + stl, err := ReadBinaryStlFile(args.filePath) if err != nil { log.Fatal(err) } @@ -40,7 +49,8 @@ func main() { } } -func parseFlags(stlFilePath *string) { - flag.StringVar(stlFilePath, "file", "myfile.stl", "path to the binary STL file") +func (args *cliArgs) read() { + flag.BoolVar(&args.debugOutput, "debug", false, "enable to print log output") flag.Parse() + args.filePath = flag.Arg(0) } |