7a5892
#pragma once
7a5892
7a5892
#ifndef MODIFIERLINE_INCLUDED
7a5892
#define MODIFIERLINE_INCLUDED
7a5892
7a5892
// TnzTools includes
7a5892
#include <tools inputmanager.h=""></tools>
7a5892
7a5892
7a5892
#undef DVAPI
7a5892
#undef DVVAR
7a5892
#ifdef TNZTOOLS_EXPORTS
7a5892
#define DVAPI DV_EXPORT_API
7a5892
#define DVVAR DV_EXPORT_VAR
7a5892
#else
7a5892
#define DVAPI DV_IMPORT_API
7a5892
#define DVVAR DV_IMPORT_VAR
7a5892
#endif
7a5892
7a5892
7a5892
//===================================================================
7a5892
7a5892
//*****************************************************************************************
7a5892
//    TModifierLine definition
7a5892
//*****************************************************************************************
7a5892
7a5892
class TModifierLine: public TInputModifier {
7a5892
public:
7a5892
  class Modifier: public TTrackModifier {
7a5892
  public:
7a5892
    explicit Modifier(TTrackHandler &handler):
7a5892
      TTrackModifier(handler), fixAngle(), maxPressure() { }
7a5892
7a5892
    bool fixAngle;
7a5892
    double maxPressure;
7a5892
    TInputSavePoint::Holder savePoint;
7a5892
7a5892
    TTrackPoint calcPoint(double originalIndex) override;
7a5892
  };
7a5892
7a5892
  void modifyTrack(
7a5892
    const TTrack &track,
7a5892
    const TInputSavePoint::Holder &savePoint,
7a5892
    TTrackList &outTracks ) override;
7a5892
};
7a5892
7a5892
#endif