补齐 tooldata 非随机同步 probe
This commit is contained in:
@@ -89,6 +89,42 @@ int main() {
|
|||||||
return 9;
|
return 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tooldata_init(false);
|
||||||
|
std::string nonrandom_path_template = make_temp_template("cnc_tooldata_common_nonrandom_probe_XXXXXX");
|
||||||
|
std::vector<char> nonrandom_path(nonrandom_path_template.begin(), nonrandom_path_template.end());
|
||||||
|
nonrandom_path.push_back('\0');
|
||||||
|
const int nonrandom_fd = mkstemp(nonrandom_path.data());
|
||||||
|
if (nonrandom_fd < 0) {
|
||||||
|
return 16;
|
||||||
|
}
|
||||||
|
FILE *nonrandom_fp = fdopen(nonrandom_fd, "w");
|
||||||
|
if (!nonrandom_fp) {
|
||||||
|
close(nonrandom_fd);
|
||||||
|
std::remove(nonrandom_path.data());
|
||||||
|
return 17;
|
||||||
|
}
|
||||||
|
std::fputs("T-1 P5 Z4.25\n", nonrandom_fp);
|
||||||
|
std::fclose(nonrandom_fp);
|
||||||
|
|
||||||
|
if (tooldata_load(nonrandom_path.data()) != 0) {
|
||||||
|
std::remove(nonrandom_path.data());
|
||||||
|
return 18;
|
||||||
|
}
|
||||||
|
std::remove(nonrandom_path.data());
|
||||||
|
|
||||||
|
// LinuxCNC source basis: src/emc/tooldata/tooldata_common.cc
|
||||||
|
// tooldata_load() mirrors a matching nonrandom table entry into spindle
|
||||||
|
// pocket 0 after tooldata_read_entry() assigns fake pocket indices.
|
||||||
|
CANON_TOOL_TABLE nonrandom_spindle = tooldata_entry_init();
|
||||||
|
if (tooldata_get(&nonrandom_spindle, 0) != IDX_OK) {
|
||||||
|
return 19;
|
||||||
|
}
|
||||||
|
if (nonrandom_spindle.toolno != -1 || nonrandom_spindle.pocketno != 5 ||
|
||||||
|
nonrandom_spindle.offset.tran.z != 4.25) {
|
||||||
|
return 20;
|
||||||
|
}
|
||||||
|
|
||||||
|
tooldata_init(true);
|
||||||
tooldata_set_db(DB_ACTIVE);
|
tooldata_set_db(DB_ACTIVE);
|
||||||
if (tooldata_load(path.data()) != -1) {
|
if (tooldata_load(path.data()) != -1) {
|
||||||
return 10;
|
return 10;
|
||||||
|
|||||||
Reference in New Issue
Block a user