コード例 #1
0
ファイル: iotype.go プロジェクト: axel-freesp/sge
func (t *iotype) SetName(newName string) {
	_, ok := freesp.GetIOTypeByName(newName)
	if ok {
		log.Printf("iotype.SetName error: cannot rename to existing iotype.\n")
		return
	}
	freesp.RemoveRegisteredIOType(t)
	t.name = newName
	freesp.RegisterIOType(t)
}
コード例 #2
0
ファイル: iotype.go プロジェクト: axel-freesp/sge
func IOTypeNew(name string, mode gr.IOMode, platform pf.PlatformIf) (t *iotype, err error) {
	newT := &iotype{name, mode, platform}
	ioType, ok := freesp.GetIOTypeByName(name)
	if ok {
		if (*newT) != (*(ioType.(*iotype))) {
			err = fmt.Errorf("IOTypeNew error: adding existing io type %s, which is incompatible.", name)
			err = fmt.Errorf("%s\nexisting: %v - new: %v\n", err, ioType, newT)
			return
		}
		t = ioType.(*iotype)
	} else {
		t = newT
		freesp.RegisterIOType(t)
	}
	return
}