BTK  0.3dev.0
Open-source library to visualize/process biomechanical data
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
btk::IMUsExtractor Class Reference

Extracts inertial measurement units (IMUs) from a btk::Acquisition object. More...

#include <btkIMUsExtractor.h>

Inheritance diagram for btk::IMUsExtractor:
Inheritance graph
[legend]

Public Types

typedef btkSharedPtr< const
IMUsExtractor
ConstPointer
 
typedef btkSharedPtr
< IMUsExtractor
Pointer
 
- Public Types inherited from btk::ProcessObject
typedef btkSharedPtr< const
ProcessObject
ConstPointer
 
typedef btkSharedPtr
< ProcessObject
Pointer
 
- Public Types inherited from btk::Object
typedef btkSharedPtr< const
Object
ConstPointer
 
typedef btkSharedPtr< ObjectPointer
 

Public Member Functions

Acquisition::Pointer GetInput ()
 
Acquisition::Pointer GetInput (int idx)
 
IMUCollection::Pointer GetOutput ()
 
void SetInput (Acquisition::Pointer input)
 
void SetInput (int idx, Acquisition::Pointer input)
 
- Public Member Functions inherited from btk::ProcessObject
int GetInputNumber () const
 
int GetOutputNumber () const
 
int GetValidInputNumber () const
 
void ResetState ()
 
void Update ()
 
- Public Member Functions inherited from btk::Object
unsigned long int GetTimestamp () const
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

virtual void GenerateData ()
 
IMUCollection::Pointer GetOutput (int idx)
 
 IMUsExtractor ()
 
virtual DataObject::Pointer MakeOutput (int idx)
 
- Protected Member Functions inherited from btk::ProcessObject
int GetInputIndex (DataObject::Pointer input)
 
DataObject::Pointer GetNthInput (int idx)
 
DataObject::ConstPointer GetNthInput (int idx) const
 
DataObject::Pointer GetNthOutput (int idx)
 
DataObject::ConstPointer GetNthOutput (int idx) const
 
int GetOutputIndex (DataObject::Pointer output)
 
bool IsModified () const
 
void Modified ()
 
 ProcessObject ()
 
void SetInputNumber (int num)
 
virtual void SetNthInput (int idx, DataObject::Pointer input)
 
virtual void SetNthOutput (int idx, DataObject::Pointer output)
 
void SetOutputNumber (int num)
 
virtual ~ProcessObject ()
 
- Protected Member Functions inherited from btk::Object
 Object ()
 
 Object (const Object &toCopy)
 
virtual ~Object ()
 

Additional Inherited Members

- Protected Attributes inherited from btk::Object
unsigned long int m_Timestamp
 

Detailed Description

Extracts inertial measurement units (IMUs) from a btk::Acquisition object.

Based on the content of the metadata IMU and the analog channels stored in the given acquisition, this filter creates a collection of btk::IMU returned in the output.

The metadata IMU must be structured as the following:

The supported types are the following:

Note: In case your inertial sensor contain only a subset of the proposed type (for example 1D accelerometer + 2D gyroscope), you don't need to add 3 channels with 0 values. Only the metadata IMU:CHANNEL and IMU:CAL_MATRIX must be adapted in consequence. For example the value of IMU:CHANNEL could be 0 0 1 2 3 0. The metadata IMU:CAL_MATRIX will be then a matrix with 3x3 value (e.g. [1 0 0 0 1 0 0 0 1]).

Note
This class is still experimental and could be modified in the next release.

Member Typedef Documentation

Smart pointer associated with a const IMUsExtractor object.

Smart pointer associated with a IMUsExtractor object.

Constructor & Destructor Documentation

btk::IMUsExtractor::IMUsExtractor ( )
protected

Constructor. Sets the number of inputs and outputs to 1.

Member Function Documentation

void btk::IMUsExtractor::GenerateData ( )
protectedvirtual

Generates the outputs' data.

Implements btk::ProcessObject.

Acquisition::Pointer btk::IMUsExtractor::GetInput ( )
inline

Gets the input registered with this process.

Acquisition::Pointer btk::IMUsExtractor::GetInput ( int  idx)
inline

Gets the input registered with this process at the index idx.

PointCollection::Pointer btk::IMUsExtractor::GetOutput ( )
inline

Gets the output created with this process.

PointCollection::Pointer btk::IMUsExtractor::GetOutput ( int  idx)
inlineprotected

Gets the output created with this process at the index idx.

DataObject::Pointer btk::IMUsExtractor::MakeOutput ( int  idx)
protectedvirtual

Creates a PointCollection:Pointer object and return it as a DataObject::Pointer.

Implements btk::ProcessObject.

static Pointer btk::IMUsExtractor::New ( )
inlinestatic

Creates a smart pointer associated with a IMUsExtractor object.

void btk::IMUsExtractor::SetInput ( Acquisition::Pointer  input)
inline

Sets the input required with this process.

void btk::IMUsExtractor::SetInput ( int  idx,
Acquisition::Pointer  input 
)
inline

Sets the input required with this process at the index idx.