** Date Started: Aug 1984
**
** This is part of the CTSim program
-** Copyright (c) 1983-2000 Kevin Rosenberg
-**
-** $Id$
+** Copyright (c) 1983-2009 Kevin Rosenberg
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
void
SignalFilter::createFrequencyFilter (double* adFilter) const
{
- double x;
- int i;
- for (x = m_dFilterMin, i = 0; i < m_nFilterPoints; x += m_dFilterInc, i++)
+ double xstart = m_dFilterMin;
+#if HAVE_OPENMP
+ #pragma omp parallel for
+#endif
+ for (int i = 0; i < m_nFilterPoints; i++) {
+ double x = xstart + (i * m_dFilterInc);
adFilter[i] = frequencyResponse (x);
+ }
}
for (int i = 1; i <= sidelen; i++ )
m_adFilter [center + i] = m_adFilter [center - i] = c / (4 * (i * i) - 1);
} else {
- double x = m_dFilterMin;
- for (int i = 0; i < m_nFilterPoints; i++, x += m_dFilterInc) {
+ double xstart = m_dFilterMin;
+#if HAVE_OPENMP
+ #pragma omp parallel for
+#endif
+ for (int i = 0; i < m_nFilterPoints; i++) {
+ double x = xstart + (i * m_dFilterInc);
if (haveAnalyticSpatial(m_idFilter))
m_adFilter[i] = spatialResponseAnalytic (x);
else
{
int filterID = FILTER_INVALID;
- for (int i = 0; i < s_iFilterCount; i++)
+ for (int i = 0; i < s_iFilterCount; i++) {
if (strcasecmp (filterName, s_aszFilterName[i]) == 0) {
filterID = i;
break;
}
+ }
return (filterID);
}
{
static const char *title = "";
- if (filterID >= 0 && filterID < s_iFilterCount)
+ if (filterID >= 0 && filterID < s_iFilterCount) {
return (s_aszFilterTitle [filterID]);
-
+ }
return (title);
}
{
int dID = DOMAIN_INVALID;
- for (int i = 0; i < s_iDomainCount; i++)
+ for (int i = 0; i < s_iDomainCount; i++) {
if (strcasecmp (domainName, s_aszDomainName[i]) == 0) {
dID = i;
break;
}
-
- return (dID);
+ }
+ return (dID);
}
const char *