]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins/Interface/Parameters.cxx
...
[cpPlugins.git] / lib / cpPlugins / Interface / Parameters.cxx
index 54eab8d94967ee57b40158c6dba861bfaa05e00b..38a5f14af0b02729b9298d1290265e586cb20a51 100644 (file)
@@ -57,7 +57,7 @@ cpPlugins_Interface_Parameters_SetArrayMacro( Point, double );
     if( pIt->second.first != Self::TYPE##List )                         \
       return;                                                           \
     std::stringstream ss;                                               \
-    ss << pIt->second.second << v << ":";                              \
+    ss << pIt->second.second << v << "#";                               \
     pIt->second.second = ss.str( );                                     \
   }
 
@@ -84,7 +84,7 @@ cpPlugins_Interface_Parameters_SetListMacro( Real );
     for( TUint i = 0; i < n; ++i )                                      \
       ss << va_arg( v_lst, ATYPE ) << ",";                              \
     va_end( v_lst );                                                    \
-    ss << ":";                                                          \
+    ss << "#";                                                          \
     pIt->second.second = ss.str( );                                     \
   }
 
@@ -273,7 +273,7 @@ GetValueAsStringList(
 
   std::istringstream ss( pIt->second.second );
   std::string token;
-  while( std::getline( ss, token, ':' ) )
+  while( std::getline( ss, token, '#' ) )
     if( token != "" )
       lst.push_back( token );
 }
@@ -291,7 +291,7 @@ GetValueAsBoolList( std::vector< TBool >& lst, const TString& name ) const
 
   std::istringstream ss( pIt->second.second );
   std::string token;
-  while( std::getline( ss, token, ':' ) )
+  while( std::getline( ss, token, '#' ) )
     if( token != "" )
       lst.push_back( TBool( std::atoi( token.c_str( ) ) == 1 ) );
 }
@@ -309,7 +309,7 @@ GetValueAsIntList( std::vector< TInt >& lst, const TString& name ) const
 
   std::istringstream ss( pIt->second.second );
   std::string token;
-  while( std::getline( ss, token, ':' ) )
+  while( std::getline( ss, token, '#' ) )
     if( token != "" )
       lst.push_back( TInt( std::atoi( token.c_str( ) ) ) );
 }
@@ -327,7 +327,7 @@ GetValueAsUintList( std::vector< TUint >& lst, const TString& name ) const
 
   std::istringstream ss( pIt->second.second );
   std::string token;
-  while( std::getline( ss, token, ':' ) )
+  while( std::getline( ss, token, '#' ) )
     if( token != "" )
       lst.push_back( TUint( std::atoi( token.c_str( ) ) ) );
 }
@@ -345,9 +345,149 @@ GetValueAsRealList( std::vector< TReal >& lst, const TString& name ) const
 
   std::istringstream ss( pIt->second.second );
   std::string token;
-  while( std::getline( ss, token, ':' ) )
+  while( std::getline( ss, token, '#' ) )
     if( token != "" )
       lst.push_back( TReal( std::atof( token.c_str( ) ) ) );
 }
 
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasStringValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::String );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasBoolValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::Bool );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasIntValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::Int );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasUintValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::Uint );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasRealValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::Real );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasIndexValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::Index );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasPointValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::Point );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasStringListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::StringList );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasBoolListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::BoolList );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasIntListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::IntList );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasUintListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::UintList );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasRealListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::RealList );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasIndexListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::IndexList );
+  return( false );
+}
+
+// -------------------------------------------------------------------------
+bool cpPlugins::Interface::Parameters::
+HasPointListValue( const TString& name ) const
+{
+  TParameters::const_iterator pIt = this->m_Parameters.find( name );
+  if( pIt != this->m_Parameters.end( ) )
+    return( pIt->second.first == Self::PointList );
+  return( false );
+}
+
 // eof - $RCSfile$