Sound Design Toolkit 075 Physically informed sound synthesis for everyday sounds

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

SDTInteractors.h
Go to the documentation of this file.
1
7 #ifndef SDT_INTERACTORS_H
8 #define SDT_INTERACTORS_H
9
21 typedef struct SDTInteractor SDTInteractor;
22
25 extern void SDTInteractor_setFirstResonator(SDTInteractor *x, SDTResonator *p);
26
29 extern void SDTInteractor_setSecondResonator(SDTInteractor *x, SDTResonator *p);
30
33 extern void SDTInteractor_setFirstPoint(SDTInteractor *x, long l);
34
37 extern void SDTInteractor_setSecondPoint(SDTInteractor *x, long l);
38
41 extern double SDTInteractor_computeForce(SDTInteractor *x);
42
54 extern void SDTInteractor_dsp(SDTInteractor *x, double f0, double v0, double s0,
55 double f1, double v1, double s1, double *outs);
56
71 typedef struct SDTImpact SDTImpact;
72
75 extern SDTInteractor *SDTImpact_new();
76
79 extern void SDTImpact_free(SDTInteractor *x);
80
83 extern void SDTImpact_setStiffness(SDTInteractor *x, double f);
84
87 extern void SDTImpact_setDissipation(SDTInteractor *x, double f);
88
91 extern void SDTImpact_setShape(SDTInteractor *x, double f);
92
113 typedef struct SDTFriction SDTFriction;
114
117 extern SDTInteractor *SDTFriction_new();
118
121 extern void SDTFriction_free(SDTInteractor *x);
122
125 extern void SDTFriction_setNormalForce(SDTInteractor *x, double f);
126
129 extern void SDTFriction_setStribeckVelocity(SDTInteractor *x, double f);
130
133 extern void SDTFriction_setStaticCoefficient(SDTInteractor *x, double f);
134
137 extern void SDTFriction_setDynamicCoefficient(SDTInteractor *x, double f);
138
141 extern void SDTFriction_setBreakAway(SDTInteractor *x, double f);
142
145 extern void SDTFriction_setStiffness(SDTInteractor *x, double f);
146
149 extern void SDTFriction_setDissipation(SDTInteractor *x, double f);
150
153 extern void SDTFriction_setViscosity(SDTInteractor *x, double f);
154
157 extern void SDTFriction_setNoisiness(SDTInteractor *x, double f);
158
161 #endif
162
SDTInteractor_setSecondPoint
void SDTInteractor_setSecondPoint(SDTInteractor *x, long l)
Sets the contact point index for the second resonator.
SDTInteractor_computeForce
double SDTInteractor_computeForce(SDTInteractor *x)
Computes a force to apply to the contact points, based on the resonators' state at the chosen pickups...
SDTFriction
struct SDTFriction SDTFriction
Opaque data structure representing the internal state of a friction interactor.
Definition: SDTInteractors.h:113
SDTFriction_setStaticCoefficient
void SDTFriction_setStaticCoefficient(SDTInteractor *x, double f)
Sets the static friction coefficient.
SDTFriction_setStiffness
void SDTFriction_setStiffness(SDTInteractor *x, double f)
Sets the contact stiffness.
SDTInteractor_dsp
void SDTInteractor_dsp(SDTInteractor *x, double f0, double v0, double s0, double f1, double v1, double s1, double *outs)
Signal processing routine. Convenience method to compute the interaction force, apply it to the reson...
SDTFriction_free
void SDTFriction_free(SDTInteractor *x)
Object destructor. param[in] Pointer to a SDTInteractor instance, configured for the friction case...
SDTFriction_setNormalForce
void SDTFriction_setNormalForce(SDTInteractor *x, double f)
Sets the perpendicular force (pressure) applied to the two sliding resonators.
SDTImpact_setDissipation
void SDTImpact_setDissipation(SDTInteractor *x, double f)
Sets the dissipation coefficient.
SDTInteractor_setFirstPoint
void SDTInteractor_setFirstPoint(SDTInteractor *x, long l)
Sets the contact point index for the first resonator.
SDTImpact
struct SDTImpact SDTImpact
Opaque data structure representing the internal state of an impact interactor.
Definition: SDTInteractors.h:71
SDTFriction_new
SDTInteractor * SDTFriction_new()
Object constructor.
SDTFriction_setNoisiness
void SDTFriction_setNoisiness(SDTInteractor *x, double f)
Sets the surface roughness.
SDTInteractor_setSecondResonator
void SDTInteractor_setSecondResonator(SDTInteractor *x, SDTResonator *p)
Sets the pointer to the second interacting resonator.
SDTImpact_new
SDTInteractor * SDTImpact_new()
Object constructor.
SDTInteractor_setFirstResonator
void SDTInteractor_setFirstResonator(SDTInteractor *x, SDTResonator *p)
Sets the pointer to the first interacting resonator.
SDTImpact_setStiffness
void SDTImpact_setStiffness(SDTInteractor *x, double f)
Sets the impact stiffness.
SDTFriction_setDissipation
void SDTFriction_setDissipation(SDTInteractor *x, double f)
Sets the dissipation coefficient.
SDTFriction_setViscosity
void SDTFriction_setViscosity(SDTInteractor *x, double f)
Sets the contact viscosity.
SDTFriction_setBreakAway
void SDTFriction_setBreakAway(SDTInteractor *x, double f)
Sets the break away coefficient.
SDTInteractor
struct SDTInteractor SDTInteractor
Opaque data structure representing the interactor interface.
Definition: SDTInteractors.h:21
SDTImpact_free
void SDTImpact_free(SDTInteractor *x)
Object destructor. param[in] Pointer to a SDTInteractor instance, configured for the impact case...
SDTResonator
struct SDTResonator SDTResonator
Opaque data structure representing a solid resonator object.
Definition: SDTResonators.h:18
SDTImpact_setShape
void SDTImpact_setShape(SDTInteractor *x, double f)
Sets the shape factor.
SDTFriction_setStribeckVelocity
void SDTFriction_setStribeckVelocity(SDTInteractor *x, double f)
Sets the Stribeck velocity.
SDTFriction_setDynamicCoefficient
void SDTFriction_setDynamicCoefficient(SDTInteractor *x, double f)
Sets the dynamic friction coefficient.