rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
kst_plan_job_t Struct Reference

The state of one planning job: 176 bytes. More...

#include <kst_plan.h>

Data Fields

kst_rules_t allowed
kst_plan_t * plan
uint32_t spent
uint32_t cap
kst_image_t img
uint8_t open [32]
uint8_t dead [16]
uint8_t known [16]
uint8_t sound [16]
uint8_t order [7]
uint8_t tried [7]
uint8_t held [7]
uint8_t phase
uint8_t result
uint8_t may_be_unchecked
uint8_t group
uint8_t todo_all
uint8_t todo
uint8_t depth
uint8_t entered
uint8_t in_detour
uint8_t field
uint8_t lo
uint8_t lo_before
uint8_t extra
uint8_t settle
uint16_t x

Detailed Description

The state of one planning job: 176 bytes.

The caller owns it and reads no member. It holds a pointer to the plan it builds: the plan is not read until the job has ended, and it stays where it is, or the caller that moves job and plan sets the member plan to the new place before the next kst_plan_step(). Two jobs on two plans run side by side.

Field Documentation

◆ allowed

kst_rules_t kst_plan_job_t::allowed

hard rules the end points break themselves

◆ cap

uint32_t kst_plan_job_t::cap

units after which the job gives up

◆ dead

uint8_t kst_plan_job_t::dead[16]

bit t: the subset t has no valid order

◆ depth

uint8_t kst_plan_job_t::depth

writes ordered so far: the search depth

◆ entered

uint8_t kst_plan_job_t::entered

1: the depth was entered, not returned to

◆ extra

uint8_t kst_plan_job_t::extra

the detour value under search

◆ field

uint8_t kst_plan_job_t::field

the field whose low byte takes the detour

◆ group

uint8_t kst_plan_job_t::group

the register group worked on: 0 position, 1 speed

◆ held

uint8_t kst_plan_job_t::held[7]

the value the write at each depth replaced

◆ img

kst_image_t kst_plan_job_t::img

the image after the writes emitted so far

◆ in_detour

uint8_t kst_plan_job_t::in_detour

1: a detour value is being searched

◆ known

uint8_t kst_plan_job_t::known[16]

bit t: sound holds the verdict on t

◆ lo

uint8_t kst_plan_job_t::lo

index of that byte in the group

◆ lo_before

uint8_t kst_plan_job_t::lo_before

the low byte's value before the detour

◆ may_be_unchecked

uint8_t kst_plan_job_t::may_be_unchecked

1: the plan may end unchecked

◆ open

uint8_t kst_plan_job_t::open[32]

bit x: the extra write of x is untried

◆ order

uint8_t kst_plan_job_t::order[7]

the index written at each depth

◆ phase

uint8_t kst_plan_job_t::phase

the step the job is in, PH_*

◆ plan

kst_plan_t* kst_plan_job_t::plan

the plan the job builds

◆ result

uint8_t kst_plan_job_t::result

◆ settle

uint8_t kst_plan_job_t::settle

writes whose settled mark is set

◆ sound

uint8_t kst_plan_job_t::sound[16]

bit t: the image of subset t is valid

◆ spent

uint32_t kst_plan_job_t::spent

units since the job began

◆ todo

uint8_t kst_plan_job_t::todo

those of them not written at this depth

◆ todo_all

uint8_t kst_plan_job_t::todo_all

the group's registers that change

◆ tried

uint8_t kst_plan_job_t::tried[7]

bit i: done with at this depth

◆ x

uint16_t kst_plan_job_t::x

detour values checked so far


The documentation for this struct was generated from the following file: