WebRadioApp  0.1
_EffectsPointEffect.h
Go to the documentation of this file.
1 /*******************************************************************************
2 *
3 * E M B E D D E D W I Z A R D P R O J E C T
4 *
5 * Copyright (c) TARA Systems GmbH
6 * written by Paul Banach and Manfred Schweyer
7 *
8 ********************************************************************************
9 *
10 * This file was generated automatically by Embedded Wizard Studio.
11 *
12 * Please do not make any modifications of this file! The modifications are lost
13 * when the file is generated again by Embedded Wizard Studio!
14 *
15 * The template of this heading text can be found in the file 'head.ewt' in the
16 * directory 'Platforms' of your Embedded Wizard installation directory. If you
17 * wish to adapt this text, please copy the template file 'head.ewt' into your
18 * project directory and edit the copy only. Please avoid any modifications of
19 * the original template file!
20 *
21 * Version : 10.00
22 * Profile : STM32H747
23 * Platform : STM.STM32.RGB565
24 *
25 *******************************************************************************/
26 
27 #ifndef _EffectsPointEffect_H
28 #define _EffectsPointEffect_H
29 
30 #ifdef __cplusplus
31  extern "C"
32  {
33 #endif
34 
35 #include "ewrte.h"
36 #if EW_RTE_VERSION != 0x000A0000
37  #error Wrong version of Embedded Wizard Runtime Environment.
38 #endif
39 
40 #include "ewgfx.h"
41 #if EW_GFX_VERSION != 0x000A0000
42  #error Wrong version of Embedded Wizard Graphics Engine.
43 #endif
44 
45 #include "_EffectsEffect.h"
46 
47 /* Forward declaration of the class Core::Timer */
48 #ifndef _CoreTimer_
49  EW_DECLARE_CLASS( CoreTimer )
50 #define _CoreTimer_
51 #endif
52 
53 /* Forward declaration of the class Effects::PointEffect */
54 #ifndef _EffectsPointEffect_
55  EW_DECLARE_CLASS( EffectsPointEffect )
56 #define _EffectsPointEffect_
57 #endif
58 
59 /* Forward declaration of the class Effects::TimingList */
60 #ifndef _EffectsTimingList_
61  EW_DECLARE_CLASS( EffectsTimingList )
62 #define _EffectsTimingList_
63 #endif
64 
65 
66 /* The class Effects::PointEffect provides an animation effect intended to animate
67  a 'point' value within a range determined by the properties @Value1 and @value2.
68  During the animation the value is interpolated and stored in the variable @Value.
69  Additionally the @Outlet property can refer to a 'point' property which thus
70  will be 'remote controlled' by the effect.
71  Beside the both end values, animation effects are determined by their duration
72  and by the timing function. The duration is primarily controlled by the value
73  of the property @CycleDuration. This is the time the effect will take for a single
74  animation run. Whether and how often the animation is repeated is stored in the
75  property @NoOfCycles. In this case the property @InterCycleDelay can determine
76  an optional interval to wait between two consecutive animation runs. Finally
77  the property @InitialDelay determines the interval to wait at the very beginning
78  of the effect still before the first animation run began.
79  The timing function determines the curve to run the animation. The class implements
80  an extensive set of various timing functions. In its simplest case the animation
81  can follow a straight line, or it can start slow and get faster afterwards. More
82  complex timings perform realistic spring elastic and bounce animations. Besides
83  it the user can configure his/her own animation curve. In such case the timing
84  function is based on a cubic Bezier curve. It gives the designer a lot of possibilities
85  to specify very fancy timing functions. The timing is controlled by the property
86  @Timing. In the case the designer wants to specify a new curve, the properties
87  @TimingCustom1 and @TimingCustom2 are available. With the property @Noise an
88  additional random noise can be added to the effect.
89  During the runtime of the animation, the effect will send signals to the slot
90  method stored in the property @OnAnimate. When the effect is finished a signal
91  is send to the slot method stored in the @OnFinished property.
92  Whether the effect is running or not is controlled by its property @Enabled.
93  It can be used to start and stop the effect. The effect can also be controlled
94  by sending signals to its @StartEffect and @StopEffect slot methods. With the
95  property @Reversed the playback direction can be determined. This allows to simply
96  rewind running effects or to configure an effect to be played in the reverse
97  direction. The slot method @ReverseEffect can also be used to switch the playback
98  direction. */
99 EW_DEFINE_FIELDS( EffectsPointEffect, EffectsEffect )
100  EW_PROPERTY( Outlet, XRef )
101  EW_VARIABLE( Value, XPoint )
102  EW_PROPERTY( Value2, XPoint )
103  EW_PROPERTY( Value1, XPoint )
104 EW_END_OF_FIELDS( EffectsPointEffect )
105 
106 /* Virtual Method Table (VMT) for the class : 'Effects::PointEffect' */
107 EW_DEFINE_METHODS( EffectsPointEffect, EffectsEffect )
108  EW_METHOD( Animate, void )( EffectsPointEffect _this, XFloat aProgress )
109 EW_END_OF_METHODS( EffectsPointEffect )
110 
111 /* 'C' function for method : 'Effects::PointEffect.Animate()' */
112 void EffectsPointEffect_Animate( EffectsPointEffect _this, XFloat aProgress );
113 
114 #ifdef __cplusplus
115  }
116 #endif
117 
118 #endif /* _EffectsPointEffect_H */
119 
120 /* Embedded Wizard */
XRef
Definition: ewrte.h:2075
EW_METHOD
EW_METHOD(Animate, void)(EffectsPointEffect _this
ewrte.h
_EffectsEffect.h
EW_END_OF_FIELDS
#define EW_END_OF_FIELDS(aClass)
Definition: ewrte.h:460
EW_DECLARE_CLASS
#define EW_DECLARE_CLASS(aClass)
Definition: ewrte.h:393
EW_VARIABLE
#define EW_VARIABLE(aName, aType)
Definition: ewrte.h:464
ewgfx.h
EW_DEFINE_METHODS
#define EW_DEFINE_METHODS(aClass, aSuperClass)
Definition: ewrte.h:524
EffectsPointEffect_Animate
XFloat aProgress void EffectsPointEffect_Animate(EffectsPointEffect _this, XFloat aProgress)
Definition: Effects.c:1126
XFloat
float XFloat
Definition: ewrte.h:1595
XPoint
Definition: ewrte.h:1616
EW_PROPERTY
#define EW_PROPERTY(aName, aType)
Definition: ewrte.h:466
EW_END_OF_METHODS
#define EW_END_OF_METHODS(aClass)
Definition: ewrte.h:539
EW_DEFINE_FIELDS
#define EW_DEFINE_FIELDS(aClass, aSuperClass)
Definition: ewrte.h:451