msl 1.3.0
Loading...
Searching...
No Matches
PhaseCycling.h
Go to the documentation of this file.
1// Copyright 2025 Julien Lamy, ICube, Université de Strasbourg-CNRS.
2// Part of msl, distributed under the terms of the MIT license.
3
4#ifndef _9247633c_7043_4fd5_8684_f0cfceb4b5fd
5#define _9247633c_7043_4fd5_8684_f0cfceb4b5fd
6
7namespace msl
8{
9
12{
13public:
16
18 long linearIncrement() const;
19
22
24 long quadraticIncrement() const;
25
28
30 long phase() const;
31
34
37
40
41private:
42 long _n;
43 long _linearIncrement;
44 long _quadraticIncrement;
45};
46
47}
48
49#endif // _9247633c_7043_4fd5_8684_f0cfceb4b5fd
Compute phase cycling with linear and quadratic increments.
Definition PhaseCycling.h:12
PhaseCycling & reset()
Reset the phase cycling to 0.
PhaseCycling & operator++()
Increment the phase cycling and return the current object.
long phase() const
Return the current phase in degrees modulo 360.
long linearIncrement() const
Return the linear increment of the phase cycling, in degrees.
PhaseCycling & setQuadraticIncrement(long quadraticIncrement)
Set the quadratic increment of the phase cycling, in degrees.
long quadraticIncrement() const
Return the quadratic increment of the phase cycling, in degrees.
PhaseCycling operator++(int)
Increment the phase cycling and return the previous object.
PhaseCycling(long linearIncrement=0, long quadraticIncrement=0)
Create a phase cycling object with specified increments.
PhaseCycling & setLinearIncrement(long linearIncrement)
Set the linear increment of the phase cycling, in degrees.
Top-level namespace of the msl library.
Definition acceleration.h:17