]> Creatis software - FrontAlgorithms.git/blobdiff - appli/CTBronchi/Filter.hxx
...
[FrontAlgorithms.git] / appli / CTBronchi / Filter.hxx
diff --git a/appli/CTBronchi/Filter.hxx b/appli/CTBronchi/Filter.hxx
new file mode 100644 (file)
index 0000000..8f4f8e6
--- /dev/null
@@ -0,0 +1,79 @@
+// =========================================================================
+// @author Leonardo Florez Valencia (florez-l@javeriana.edu.co)
+// =========================================================================
+#ifndef __CTBronchi__Filter__hxx__
+#define __CTBronchi__Filter__hxx__
+
+#include <chrono>
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+CTBronchi::Filter< _TFilter >::
+Filter( )
+{
+  this->m_Filter = TFilter::New( );
+}
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+CTBronchi::Filter< _TFilter >::
+~Filter( )
+{
+}
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+bool CTBronchi::Filter< _TFilter >::
+IsNotNull( ) const
+{
+  return( this->m_Filter.IsNotNull( ) );
+}
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+bool CTBronchi::Filter< _TFilter >::
+IsNull( ) const
+{
+  return( this->m_Filter.IsNotNull( ) );
+}
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+typename CTBronchi::Filter< _TFilter >::
+TFilter* CTBronchi::Filter< _TFilter >::
+Get( )
+{
+  return( this->m_Filter );
+}
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+const typename CTBronchi::Filter< _TFilter >::
+TFilter* CTBronchi::Filter< _TFilter >::
+Get( ) const
+{
+  return( this->m_Filter );
+}
+
+// -------------------------------------------------------------------------
+template< class _TFilter >
+double CTBronchi::Filter< _TFilter >::
+Update( )
+{
+  if( this->IsNotNull( ) )
+  {
+    std::chrono::time_point< std::chrono::high_resolution_clock > s, e;
+    std::chrono::duration< double > t;
+    s = std::chrono::high_resolution_clock::now( );
+    this->m_Filter->Update( );
+    e = std::chrono::high_resolution_clock::now( );
+    t = e - s;
+    return( t.count( ) );
+  }
+  else
+    return( -1 );
+}
+
+#endif // __CTBronchi__Filter__hxx__
+
+// eof - $RCSfile$