v2.0.0
Loading...
Searching...
No Matches
fastrak_parser.h File Reference

Polhemus Fastrak / FastSCAN ASCII record parser. More...

#include "../utils_global.h"
#include <QByteArray>
#include <QQuaternion>
#include <QVector3D>
Include dependency graph for fastrak_parser.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  UTILSLIB::FastrakSample
 One decoded sample from a Fastrak ASCII stream. More...
class  UTILSLIB::FastrakParser
 Streaming parser for Fastrak / FastSCAN ASCII records. More...

Namespaces

namespace  UTILSLIB
 Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).

Detailed Description

Polhemus Fastrak / FastSCAN ASCII record parser.

SPDX-License-Identifier: BSD-3-Clause Copyright (c) 2026 MNE-CPP Authors

Author
Christoph Dinh chris.nosp@m.toph.nosp@m..dinh.nosp@m.@mne.nosp@m.-cpp..nosp@m.org
Since
2.2.1
Date
May 2026
      Supported ASCII record formats:

        Euler:      <st> <x> <y> <z> <az> <el> <ro>    CR LF
        Quaternion: <st> <x> <y> <z> <q0> <q1> <q2> <q3> CR LF

      Auto-detected by token count (7 = Euler, 8 = quaternion).
      Quaternion mode (O-item 7) is preferred because it avoids
      gimbal lock at elevation ±90°. Positions are in the units
      configured on the device (inches for Fastrak, centimetres
      for FastSCAN).

      This parser is intentionally I/O-free so it can be unit
      tested without a serial port: feed bytes via @ref append,
      pop completed samples via @ref nextSample.

Definition in file fastrak_parser.h.