func AgentInit()

in sdk/python3/api.go [53:79]


func AgentInit(self *C.Agent, args *C.PyObject, _ *C.PyObject) C.int {
	var cConfigData *C.char
	var cStateDir *C.char

	if C.PyArg_ParseTuple_ss(args, &cConfigData, &cStateDir) == 0 {
		return -1
	}

	agentsmu.Lock()
	defer agentsmu.Unlock()

	num := agentCount
	agentCount++
	goConfigData := []byte(C.GoString(cConfigData))
	goStateDir := C.GoString(cStateDir)

	agent, err := sdk.NewAgent(goConfigData, goStateDir)
	if err != nil {
		setException(err.Error())
		return -1
	}

	agents[num] = agent
	self.agentnum = num

	return 0
}