go-hep.org/x/hep@v0.38.1/fwk/cmd/fwk-new-comp/tsk_template.go (about)

     1  // Copyright ©2017 The go-hep Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  package main
     6  
     7  const g_task_template = `package {{.Package}}
     8  
     9  import (
    10  	"reflect"
    11  
    12  	"go-hep.org/x/hep/fwk"
    13  )
    14  
    15  type {{.Name}} struct {
    16      fwk.TaskBase
    17  }
    18  
    19  func (tsk *{{.Name}}) Configure(ctx fwk.Context) error {
    20      var err error
    21  
    22  	// err = tsk.DeclInPort(tsk.input, reflect.TypeOf(sometype{}))
    23  	// if err != nil {
    24  	//	return err
    25  	// }
    26  
    27  	// err = tsk.DeclOutPort(tsk.output, reflect.TypeOf(sometype{}))
    28  	// if err != nil {
    29  	//	return err
    30  	// }
    31  
    32      return err
    33  }
    34  
    35  func (tsk *{{.Name}}) StartTask(ctx fwk.Context) error {
    36  	var err error
    37  
    38  	return err
    39  }
    40  
    41  func (tsk *{{.Name}}) StopTask(ctx fwk.Context) error {
    42  	var err error
    43  
    44  	return err
    45  }
    46  
    47  func (tsk *{{.Name}}) Process(ctx fwk.Context) error {
    48  	var err error
    49  
    50  	return err
    51  }
    52  
    53  func new{{.Name}}(typ, name string, mgr fwk.App) (fwk.Component, error) {
    54  	var err error
    55  
    56  	tsk := &{{.Name}}{
    57  		TaskBase: fwk.NewTask(typ, name, mgr),
    58  		// input:    "Input",
    59  		// output:   "Output",
    60  	}
    61  
    62  	// err = tsk.DeclProp("Input", &tsk.input)
    63  	// if err != nil {
    64  	// 	return nil, err
    65  	// }
    66  
    67  	// err = tsk.DeclProp("Output", &tsk.output)
    68  	// if err != nil {
    69  	//	return nil, err
    70  	// }
    71  
    72  	return tsk, err
    73  }
    74  
    75  func init() {
    76  	fwk.Register(reflect.TypeOf({{.Name}}{}), new{{.Name}})
    77  }
    78  `