summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2017-01-26 14:57:42 +0100
committerWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2017-02-08 11:32:33 +0100
commit1d851f0a8fa093e044c7264569cc6f88df39a16e (patch)
tree3400c666ffd60cbdec68777e2c5aa71f7064d11c
parente8f6dd643fc04588cb8a8eaa8453c0eb6d40e236 (diff)
downloadastra-1d851f0a8fa093e044c7264569cc6f88df39a16e.tar.gz
astra-1d851f0a8fa093e044c7264569cc6f88df39a16e.tar.bz2
astra-1d851f0a8fa093e044c7264569cc6f88df39a16e.tar.xz
astra-1d851f0a8fa093e044c7264569cc6f88df39a16e.zip
Remove unused 3d global min/max
-rw-r--r--include/astra/Float32Data3D.h16
-rw-r--r--include/astra/Float32Data3DMemory.h42
-rw-r--r--matlab/mex/astra_mex_data3d_c.cpp4
-rw-r--r--matlab/mex/mexDataManagerHelpFunctions.cpp11
-rw-r--r--matlab/mex/mexDataManagerHelpFunctions.h2
-rw-r--r--python/astra/data3d_c.pyx1
-rw-r--r--src/Float32Data3DMemory.cpp38
7 files changed, 2 insertions, 112 deletions
diff --git a/include/astra/Float32Data3D.h b/include/astra/Float32Data3D.h
index 1cd9c20..2b3b88e 100644
--- a/include/astra/Float32Data3D.h
+++ b/include/astra/Float32Data3D.h
@@ -107,22 +107,6 @@ public:
*/
int getDimensionCount() const;
- /**
- * Clamp data to minimum value
- *
- * @param _fMin minimum value
- * @return l-value
- */
- virtual CFloat32Data3D& clampMin(float32& _fMin) = 0;
-
- /**
- * Clamp data to maximum value
- *
- * @param _fMax maximum value
- * @return l-value
- */
- virtual CFloat32Data3D& clampMax(float32& _fMax) = 0;
-
/** get a description of the class
*
* @return description string
diff --git a/include/astra/Float32Data3DMemory.h b/include/astra/Float32Data3DMemory.h
index d885101..e0c04a0 100644
--- a/include/astra/Float32Data3DMemory.h
+++ b/include/astra/Float32Data3DMemory.h
@@ -237,35 +237,11 @@ public:
* After the call p = getData3D(), use p[iy][ix] to access element (ix, iy, iz).
* The data memory and pointer array are still "owned" by the CFloat32Data3DMemory
* instance; this memory may NEVER be freed by the caller of this function.
- * If changes are made to this data, the function updateStatistics()
- * should be called after completion of all changes.
*
* @return pointer to the 3-dimensional 32-bit floating point data block
*/
const float32*** getData3DConst() const;
- /** Update data statistics, such as minimum and maximum value, after the data has been modified.
- */
- virtual void updateStatistics();
-
- /** Get the minimum value in the data block.
- * If the data has been changed after construction, the function
- * updateStatistics() must be called at least once before
- * a query can be made on this value.
- *
- * @return minimum value in the data block
- */
- virtual float32 getGlobalMin() const;
-
- /** Get the maximum value in the data block
- * If the data has been changed after construction, the function
- * updateStatistics() must be called at least once before
- * a query can be made on this value.
- *
- * @return maximum value in the data block
- */
- virtual float32 getGlobalMax() const;
-
/** which type is this class?
*
* @return DataType: ASTRA_DATATYPE_FLOAT32_PROJECTION or
@@ -306,26 +282,11 @@ inline CFloat32Data3DMemory::EDataType CFloat32Data3DMemory::getType() const
}
//----------------------------------------------------------------------------------------
-// Get the minimum value in the data block.
-inline float32 CFloat32Data3DMemory::getGlobalMin() const
-{
- ASTRA_ASSERT(m_bInitialized);
- return m_fGlobalMin;
-}
-
-//----------------------------------------------------------------------------------------
-// Get the maximum value in the data block
-inline float32 CFloat32Data3DMemory::getGlobalMax() const
-{
- ASTRA_ASSERT(m_bInitialized);
- return m_fGlobalMax;
-}
-
-//----------------------------------------------------------------------------------------
// Get a pointer to the data block, represented as a 1-dimensional array of float32 values.
inline float32* CFloat32Data3DMemory::getData()
{
ASTRA_ASSERT(m_bInitialized);
+
return m_pfData;
}
@@ -334,6 +295,7 @@ inline float32* CFloat32Data3DMemory::getData()
inline const float32* CFloat32Data3DMemory::getDataConst() const
{
ASTRA_ASSERT(m_bInitialized);
+
return (const float32*)m_pfData;
}
diff --git a/matlab/mex/astra_mex_data3d_c.cpp b/matlab/mex/astra_mex_data3d_c.cpp
index 7909a79..2dca3b8 100644
--- a/matlab/mex/astra_mex_data3d_c.cpp
+++ b/matlab/mex/astra_mex_data3d_c.cpp
@@ -103,7 +103,6 @@ void astra_mex_data3d_create(int& nlhs, mxArray* plhs[], int& nrhs, const mxArra
copyMexToCFloat32Array(data, pDataObject3D->getData(),
pDataObject3D->getSize());
}
- pDataObject3D->updateStatistics();
// step4: store data object
int iIndex = CData3DManager::getSingleton().store(pDataObject3D);
@@ -162,8 +161,6 @@ void astra_mex_data3d_link(int& nlhs, mxArray* plhs[], int& nrhs, const mxArray*
return;
}
- //pDataObject3D->updateStatistics();
-
// step4: store data object
int iIndex = CData3DManager::getSingleton().store(pDataObject3D);
@@ -234,7 +231,6 @@ void astra_mex_data3d_store(int nlhs, mxArray* plhs[], int nrhs, const mxArray*
}
copyMexToCFloat32Array(prhs[2], pDataObject->getData(), pDataObject->getSize());
- pDataObject->updateStatistics();
}
void astra_mex_data3d_dimensions(int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[])
diff --git a/matlab/mex/mexDataManagerHelpFunctions.cpp b/matlab/mex/mexDataManagerHelpFunctions.cpp
index ebf6f8f..c47ee27 100644
--- a/matlab/mex/mexDataManagerHelpFunctions.cpp
+++ b/matlab/mex/mexDataManagerHelpFunctions.cpp
@@ -166,17 +166,6 @@ checkDataSize(const mxArray * const mArray,
//-----------------------------------------------------------------------------------------
void
-updateStatistics(const std::vector<astra::CFloat32Data3DMemory *> & vecIn)
-{
- const size_t tot_size = vecIn.size();
- for (size_t count = 0; count < tot_size; count++)
- {
- vecIn[count]->updateStatistics();
- }
-}
-
-//-----------------------------------------------------------------------------------------
-void
getDataPointers(const std::vector<astra::CFloat32Data3DMemory *> & vecIn,
std::vector<astra::float32 *> & vecOut)
{
diff --git a/matlab/mex/mexDataManagerHelpFunctions.h b/matlab/mex/mexDataManagerHelpFunctions.h
index fff83a0..b7edb0f 100644
--- a/matlab/mex/mexDataManagerHelpFunctions.h
+++ b/matlab/mex/mexDataManagerHelpFunctions.h
@@ -50,8 +50,6 @@ bool checkDataSize(const mxArray * const, const astra::CProjectionGeometry3D * c
bool checkDataSize(const mxArray * const, const astra::CVolumeGeometry3D * const,
const mwIndex & zOffset);
-void updateStatistics(const std::vector<astra::CFloat32Data3DMemory *> &);
-
void getDataPointers(const std::vector<astra::CFloat32Data3DMemory *> &,
std::vector<astra::float32 *> &);
void getDataSizes(const std::vector<astra::CFloat32Data3DMemory *> &,
diff --git a/python/astra/data3d_c.pyx b/python/astra/data3d_c.pyx
index 915c60d..1b9293a 100644
--- a/python/astra/data3d_c.pyx
+++ b/python/astra/data3d_c.pyx
@@ -132,7 +132,6 @@ def create(datatype,geometry,data=None, link=False):
if not link: fillDataObject(pDataObject3D, data)
- pDataObject3D.updateStatistics()
return man3d.store(<CFloat32Data3D*>pDataObject3D)
diff --git a/src/Float32Data3DMemory.cpp b/src/Float32Data3DMemory.cpp
index 8735585..7e60527 100644
--- a/src/Float32Data3DMemory.cpp
+++ b/src/Float32Data3DMemory.cpp
@@ -76,10 +76,6 @@ bool CFloat32Data3DMemory::_initialize(int _iWidth, int _iHeight, int _iDepth)
m_pCustomMemory = 0;
_allocateData();
- // set minmax to default values
- m_fGlobalMin = 0.0;
- m_fGlobalMax = 0.0;
-
// initialization complete
return true;
@@ -273,9 +269,6 @@ void CFloat32Data3DMemory::_clear()
m_ppfDataRowInd = NULL;
m_pppfDataSliceInd = NULL;
m_pCustomMemory = NULL;
-
- //m_fGlobalMin = 0.0f;
- //m_fGlobalMax = 0.0f;
}
//----------------------------------------------------------------------------------------
@@ -290,37 +283,6 @@ void CFloat32Data3DMemory::_unInit()
}
//----------------------------------------------------------------------------------------
-// Update data statistics, such as minimum and maximum value, after the data has been modified.
-void CFloat32Data3DMemory::updateStatistics()
-{
- _computeGlobalMinMax();
-}
-
-//----------------------------------------------------------------------------------------
-// Find the minimum and maximum data value.
-void CFloat32Data3DMemory::_computeGlobalMinMax()
-{
- // basic checks
- ASTRA_ASSERT(m_bInitialized);
- ASTRA_ASSERT(m_pfData != NULL);
- ASTRA_ASSERT(m_iSize > 0);
-
- // initial values
- m_fGlobalMin = m_pfData[0];
- m_fGlobalMax = m_pfData[0];
-
- // loop
- size_t i;
- float32 v;
- for (i = 0; i < m_iSize; ++i)
- {
- v = m_pfData[i];
- if (v < m_fGlobalMin) m_fGlobalMin = v;
- if (v > m_fGlobalMax) m_fGlobalMax = v;
- }
-}
-
-//----------------------------------------------------------------------------------------
// Copy the data block pointed to by _pfData to the data block pointed to by m_pfData.
void CFloat32Data3DMemory::copyData(const float32* _pfData, size_t _iSize)
{