00001
00004 #include <bpm/bpm_messages.h>
00005 #include <bpm/bpm_process.h>
00006
00007 int time_to_sample( double fs, int ns, double t, int *iS ) {
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 double ti;
00019 int i;
00020
00021 if ( t < 0 ) {
00022 *iS = 0;
00023 return BPM_SUCCESS;
00024 }
00025
00026 for ( i=0; i<ns; i++ ) {
00027 ti = (double) i / fs;
00028 if ( ABS( t - ti ) < ( 1./fs ) ) break;
00029 }
00030
00031 *iS = i;
00032
00033
00034 return BPM_SUCCESS;
00035 }