Rev | Line | |
---|
[407] | 1 | // gyrohandler.cc
|
---|
| 2 | // Eric Aubourg CEA/DAPNIA/SPP septembre 1999
|
---|
| 3 |
|
---|
| 4 | #include <string.h>
|
---|
| 5 | #include "gyrohandler.h"
|
---|
| 6 |
|
---|
| 7 |
|
---|
| 8 | GyroHandler::GyroHandler() {
|
---|
| 9 | memset(gyro, 0, 3*nb_per_block*2*sizeof(int4));
|
---|
| 10 | }
|
---|
| 11 |
|
---|
| 12 |
|
---|
| 13 | GyroHandler::GyroHandler(GyroHandler const& x) {
|
---|
| 14 | memcpy(gyro, x.gyro, 3*nb_per_block*2*sizeof(int4));
|
---|
| 15 | }
|
---|
| 16 |
|
---|
| 17 | GyroHandler& GyroHandler::operator = (GyroHandler const& x) {
|
---|
| 18 | memcpy(gyro, x.gyro, 3*nb_per_block*2*sizeof(int4));
|
---|
| 19 | return *this;
|
---|
| 20 | }
|
---|
| 21 |
|
---|
| 22 | GyroHandler::~GyroHandler() {
|
---|
| 23 |
|
---|
| 24 | }
|
---|
| 25 |
|
---|
| 26 | void GyroHandler::ProcessBlock(block_type_gyro* blk) {
|
---|
| 27 | memcpy(gyro, blk->gyro, 3*nb_per_block*2*sizeof(int4));
|
---|
| 28 | }
|
---|
| 29 |
|
---|
| 30 | int4 GyroHandler::getRawSignal(int imesure, int igyro) {
|
---|
| 31 | if (igyro<0 || igyro>=3) return 0;
|
---|
| 32 | if (imesure<0 || imesure>=nb_per_block*2) return 0;
|
---|
| 33 | return gyro[igyro][imesure]-32768;
|
---|
| 34 | }
|
---|
| 35 |
|
---|
| 36 | double GyroHandler::getSignal(int imesure, int igyro) { // V
|
---|
| 37 | return getRawSignal(imesure, igyro) * 2. / 32768.; // +- 2V dynamique sur 16 bits
|
---|
| 38 | }
|
---|
| 39 |
|
---|
| 40 | double GyroHandler::getSpeed(int imesure, int igyro) {
|
---|
| 41 | return getSignal(imesure, igyro) * 10;
|
---|
| 42 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.