#include <iomanip>
#include <iostream>
int main(int argc,
char *argv[])
{
std::cout.rdbuf()->pubsetbuf(nullptr, 512);
std::cout << std::nounitbuf;
std::ios_base::sync_with_stdio(false);
std::cout << "Copyright (C) 2001-2023 Force Dimension" << std::endl;
std::cout << "All Rights Reserved." << std::endl << std::endl;
{
std::cout <<
"error: failed to open device (" <<
dhdErrorGetLastStr() <<
")" << std::endl;
return -1;
}
std::cout <<
dhdGetSystemName() <<
" device detected" << std::endl << std::endl;
std::cout << "press 'q' to quit" << std::endl << std::endl;
{
std::cout <<
"error: failed to enable force rendering (" <<
dhdErrorGetLastStr() <<
")" << std::endl;
return -1;
}
int numEncoders = 3;
{
numEncoders += 3;
}
{
numEncoders += 1;
}
while (true)
{
{
std::cout <<
"error: failed to render force (" <<
dhdErrorGetLastStr() <<
")" << std::endl;
break;
}
{
std::cout <<
"error: failed to read encoders (" <<
dhdErrorGetLastStr() <<
")" << std::endl;
break;
}
if (time - lastDisplayUpdateTime > 0.1)
{
lastDisplayUpdateTime = time;
std::cout << std::internal << std::showpos << std::setfill('0');
for (int index = 0; index < numEncoders; index++)
{
std::cout << std::setw(7) << encoders[index] << " ";
}
std::cout << " \r";
std::cout.flush();
}
{
std::cout << std::endl << std::endl << "exiting at user's request" << std::endl;
break;
}
}
{
std::cout <<
"error: failed to close the connection (" <<
dhdErrorGetLastStr() <<
")" << std::endl;
return -1;
}
std::cout << "connection closed" << std::endl;
return 0;
}
#define DHD_MAX_DOF
Definition: dhdc.h:133
char __SDK dhdKbGet()
Definition: dhdc.cpp:4743
int __SDK dhdSetForceAndTorqueAndGripperForce(double fx, double fy, double fz, double tx, double ty, double tz, double fg, char ID=-1)
Definition: dhdc.cpp:2040
int __SDK dhdEnableForce(uchar val, char ID=-1)
Definition: dhdc.cpp:4378
int __SDK dhdEnableExpertMode()
Definition: dhdc.cpp:2895
bool __SDK dhdHasWrist(char ID=-1)
Definition: dhdc.cpp:641
int __SDK dhdClose(char ID=-1)
Definition: dhdc.cpp:443
void __SDK dhdSleep(double sec)
Definition: dhdc.cpp:4754
@ DHD_NO_ERROR
Definition: dhdc.h:52
bool __SDK dhdKbHit()
Definition: dhdc.cpp:4731
const char *__SDK dhdGetSDKVersionStr()
Definition: dhdc.cpp:925
int __SDK dhdOpen()
Definition: dhdc.cpp:265
#define DHD_ON
Definition: dhdc.h:128
const char *__SDK dhdGetSystemName(char ID=-1)
Definition: dhdc.cpp:814
double __SDK dhdGetTime()
Definition: dhdc.cpp:190
int __SDK dhdGetEnc(int enc[DHD_MAX_DOF], uchar mask=0xff, char ID=-1)
Definition: dhdc.cpp:4435
const char *__SDK dhdErrorGetLastStr()
Definition: dhdError.cpp:197