123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- #pragma once
- #ifdef __cplusplus
- extern "C"
- {
- #endif
- typedef struct
- {
- float feedback;
- float filterstore;
- float damp1;
- float damp2;
- float *buffer;
- int bufsize;
- int bufidx;
- }comb;
- void comb_init(comb* pcombobj);
- void comb_setbuffer(comb* pcombobj,float *buf, int size);
- float comb_process(comb* pcombobj,float inp);
- void comb_mute(comb* pcombobj);
- void comb_setdamp(comb* pcombobj,float val);
- float comb_getdamp(comb* pcombobj);
- void comb_setfeedback(comb* pcombobj,float val);
- float comb_getfeedback(comb* pcombobj);
- typedef struct
- {
- float feedback;
- float *buffer;
- int bufsize;
- int bufidx;
- }allpass;
- void allpass_init(allpass* pallpassobj);
- void allpass_setbuffer(allpass* pallpassobj,float *buf, int size);
- float allpass_process(allpass* pallpassobj,float inp);
- void allpass_mute(allpass* pallpassobj);
- void allpass_setfeedback(allpass* pallpassobj,float val);
- float allpass_getfeedback(allpass* pallpassobj);
- #define numcombs 8//const int numcombs = 8;
- #define numallpasses 4//const int numallpasses = 4;
- #define combtuningL1 1116//const int combtuningL1 = 1116;
- #define combtuningL2 1188//const int combtuningL2 = 1188;
- #define combtuningL3 1277//const int combtuningL3 = 1277;
- #define combtuningL4 1356//const int combtuningL4 = 1356;
- #define combtuningL5 1422//const int combtuningL5 = 1422;
- #define combtuningL6 1491//const int combtuningL6 = 1491;
- #define combtuningL7 1557//const int combtuningL7 = 1557;
- #define combtuningL8 1617//const int combtuningL8 = 1617;
- #define allpasstuningL1 556//const int allpasstuningL1 = 556;
- #define allpasstuningL2 441//const int allpasstuningL2 = 441;
- #define allpasstuningL3 341//const int allpasstuningL3 = 341;
- #define allpasstuningL4 225//const int allpasstuningL4 = 225;
- typedef struct
- {
- float gain;
- float roomsize, roomsize1;
- float damp, damp1;
- float wet, wet1, wet2;
- float dry;
- float width;
- float mode;
- comb combL[numcombs];
- allpass allpassL[numallpasses];
- float bufcombL1[combtuningL1];
- float bufcombL2[combtuningL2];
- float bufcombL3[combtuningL3];
- float bufcombL4[combtuningL4];
- float bufcombL5[combtuningL5];
- float bufcombL6[combtuningL6];
- float bufcombL7[combtuningL7];
- float bufcombL8[combtuningL8];
- float bufallpassL1[allpasstuningL1];
- float bufallpassL2[allpasstuningL2];
- float bufallpassL3[allpasstuningL3];
- float bufallpassL4[allpasstuningL4];
- }revmodel;
- void revmodel_init(revmodel* pmodelobj);
- void revmodel_mute(revmodel* pmodelobj);
- float revmodel_processsample(revmodel* pmodelobj,float in);
- void revmodel_setroomsize(revmodel* pmodelobj,float value);
- float revmodel_getroomsize(revmodel* pmodelobj);
- void revmodel_setdamp(revmodel* pmodelobj,float value);
- float revmodel_getdamp(revmodel* pmodelobj);
- void revmodel_setwet(revmodel* pmodelobj,float value);
- float revmodel_getwet(revmodel* pmodelobj);
- void revmodel_setdry(revmodel* pmodelobj,float value);
- float revmodel_getdry(revmodel* pmodelobj);
- void revmodel_setwidth(revmodel* pmodelobj,float value);
- float revmodel_getwidth(revmodel* pmodelobj);
- void revmodel_setmode(revmodel* pmodelobj,float value);
- float revmodel_getmode(revmodel* pmodelobj);
- void revmodel_update(revmodel* pmodelobj);
- #ifdef __cplusplus
- }
- #endif
|