mirror of
https://github.com/metabarcoding/obitools4.git
synced 2025-06-29 16:20:46 +00:00
First functional version of a blackboard and a blackboard based obicount
This commit is contained in:
@ -1,21 +1,34 @@
|
||||
package obiblackboard
|
||||
|
||||
type Task struct {
|
||||
Role string
|
||||
Priority int
|
||||
Body interface{}
|
||||
Role string
|
||||
SavedTask *Task
|
||||
Priority int
|
||||
Body interface{}
|
||||
}
|
||||
|
||||
func NewInitialTask() *Task {
|
||||
return &Task{
|
||||
Role: "initial",
|
||||
Priority: 0,
|
||||
Body: nil,
|
||||
Role: "initial",
|
||||
SavedTask: nil,
|
||||
Priority: 0,
|
||||
Body: nil,
|
||||
}
|
||||
}
|
||||
|
||||
func (task *Task) GetNext() *Task {
|
||||
func (task *Task) GetNext(target string, copy bool, save bool) *Task {
|
||||
t := NewInitialTask()
|
||||
t.Priority = task.Priority + 1
|
||||
t.Role = target
|
||||
if copy {
|
||||
t.Body = task.Body
|
||||
}
|
||||
|
||||
if save {
|
||||
t.SavedTask = task
|
||||
} else {
|
||||
t.SavedTask = task.SavedTask
|
||||
}
|
||||
|
||||
return t
|
||||
}
|
||||
|
Reference in New Issue
Block a user