]> Creatis software - cpPlugins.git/blobdiff - lib/cpPluginsBase/RotNRawDataFunctor.cxx
Moved to version 1.0
[cpPlugins.git] / lib / cpPluginsBase / RotNRawDataFunctor.cxx
diff --git a/lib/cpPluginsBase/RotNRawDataFunctor.cxx b/lib/cpPluginsBase/RotNRawDataFunctor.cxx
new file mode 100644 (file)
index 0000000..17a4745
--- /dev/null
@@ -0,0 +1,78 @@
+// =========================================================================
+// @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
+// =========================================================================
+
+#include <limits>
+#include <cpPluginsBase/RotNRawDataFunctor.h>
+
+// -------------------------------------------------------------------------
+unsigned char cpPluginsBase::RotNRawDataFunctor::
+Evaluate( const unsigned char& c ) const
+{
+  static const TNatural s =
+    TNatural( std::numeric_limits< unsigned char >::max( ) ) + 1;
+  TNatural d = TNatural( this->GetInValue( "Delta" ) );
+  if( TBool( this->GetInValue( "Invert" ) ) )
+  {
+  }
+  else
+    return( ( unsigned char )( ( TNatural( c ) + d ) % s ) );
+}
+
+// -------------------------------------------------------------------------
+cpPluginsBase::RotNRawDataFunctor::
+RotNRawDataFunctor( )
+  : Superclass( )
+{
+}
+
+// -------------------------------------------------------------------------
+cpPluginsBase::RotNRawDataFunctor::
+~RotNRawDataFunctor( )
+{
+}
+
+// -------------------------------------------------------------------------
+void cpPluginsBase::RotNRawDataFunctor::
+_Configure( )
+{
+  this->ConfigureInValue( "Delta", TNatural( 13 ) );
+  this->ConfigureInValue( "Invert", TBool( false ) );
+}
+
+// -------------------------------------------------------------------------
+void cpPluginsBase::RotNRawDataFunctor::
+_GenerateData( )
+{
+}
+
+// -------------------------------------------------------------------------
+/* TODO
+   void cpPluginsBase::RotNRawDataFunctor::
+   _GenerateData( )
+   {
+   typedef cpPluginsBase::RawData _TData;
+
+   unsigned int N = this->GetNumberOfInputs( "Input" );
+   std::size_t size = 0;
+   for( unsigned int i = 0; i < N; ++i )
+   {
+   const _TData* input = this->_GetInput< _TData >( "Input", i );
+   size += input->GetSize( );
+
+   } // rof
+
+   char* buffer = new char[ size ];
+   size = 0;
+   for( unsigned int i = 0; i < N; ++i )
+   {
+   const _TData* input = this->_GetInput< _TData >( "Input", i );
+   std::memcpy( buffer + size, input->GetBuffer( ), input->GetSize( ) );
+   size += input->GetSize( );
+
+   } // rof
+   this->_GetOutput< _TData >( "Output" )->TakeOwnership( buffer, size );
+   }
+*/
+
+// eof - $RCSfile$