7e9eb1
#pragma once
7e9eb1
7e9eb1
#ifndef MODIFIERTEST_INCLUDED
7e9eb1
#define MODIFIERTEST_INCLUDED
7e9eb1
7e9eb1
// TnzTools includes
7e9eb1
#include <tools inputmanager.h=""></tools>
7e9eb1
7e9eb1
7e9eb1
#undef DVAPI
7e9eb1
#undef DVVAR
7e9eb1
#ifdef TNZTOOLS_EXPORTS
7e9eb1
#define DVAPI DV_EXPORT_API
7e9eb1
#define DVVAR DV_EXPORT_VAR
7e9eb1
#else
7e9eb1
#define DVAPI DV_IMPORT_API
7e9eb1
#define DVVAR DV_IMPORT_VAR
7e9eb1
#endif
7e9eb1
7e9eb1
7e9eb1
//===================================================================
7e9eb1
7e9eb1
//*****************************************************************************************
7e9eb1
//    TModifierTest definition
7e9eb1
//*****************************************************************************************
7e9eb1
6be163
class DVAPI TModifierTest: public TInputModifier {
7e9eb1
public:
6be163
  class DVAPI Handler: public TTrackHandler {
7e9eb1
  public:
7e9eb1
    std::vector<double> angles;</double>
c3c215
    Handler(const TTrack &original): TTrackHandler(original) { }
7e9eb1
  };
7e9eb1
6be163
  class DVAPI Modifier: public TTrackModifier {
7e9eb1
  public:
7e9eb1
    double angle;
7e9eb1
    double radius;
7e9eb1
    double speed;
7e9eb1
7e9eb1
    Modifier(TTrackHandler &handler, double angle, double radius, double speed = 0.25);
d8eddc
    TTrackPoint calcPoint(double originalIndex) override;
7e9eb1
  };
7e9eb1
7e9eb1
public:
d8eddc
  const int count;
d8eddc
  const double radius;
7e9eb1
9f0c16
  TModifierTest(int count, double radius);
7e9eb1
7e9eb1
  void modifyTrack(
c3c215
    const TTrack &track,
7e9eb1
    const TInputSavePoint::Holder &savePoint,
7e9eb1
    TTrackList &outTracks ) override;
7e9eb1
};
7e9eb1
7e9eb1
7e9eb1
#endif