Salome HOME
Compilation SALOME on Windows
[modules/kernel.git] / src / SALOMETraceCollector / Test / SALOMETraceCollectorTest.cxx
index fe6bcfde31335d73cb11d6680c7cc8596b0ba9ce..14f49717f150abc2da449d32977143777ec98797 100644 (file)
@@ -1,18 +1,20 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+// Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
+//
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
+// License as published by the Free Software Foundation; either
 // version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 // Lesser General Public License for more details.
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #include <cstdlib>
 #include "LocalTraceBufferPool.hxx"
 #include "utilities.h"
+#include "Basics_Utils.hxx"
 
-using namespace std;
+#ifdef WIN32
+#define setenv Kernel_Utils::setenv
+#endif 
 
 // ============================================================================
 /*!
@@ -64,7 +69,7 @@ void *PrintHello(void *threadid);
 void 
 SALOMETraceCollectorTest::testLoadBufferPoolCORBA()
 {
-  string s = "with_logger";
+  std::string s = "with_logger";
   CPPUNIT_ASSERT(! setenv("SALOME_trace",s.c_str(),1)); // 1: overwrite
 
   // --- NUM_THREADS thread creation for trace generation.
@@ -74,7 +79,7 @@ SALOMETraceCollectorTest::testLoadBufferPoolCORBA()
   for(t=0;t<NUM_THREADS;t++)
     {
       MESSAGE("Creating thread " << t);
-      rc = pthread_create(&threads[t], NULL, PrintHello, (void *)t) ;
+      rc = pthread_create(&threads[t], NULL, PrintHello, &t) ;
       CPPUNIT_ASSERT( !rc);
     }
 
@@ -82,7 +87,7 @@ SALOMETraceCollectorTest::testLoadBufferPoolCORBA()
 
   for(t=0;t<NUM_THREADS;t++)
     {
-      int ret = pthread_join(threads[t], NULL);
+      pthread_join(threads[t], NULL);
       MESSAGE("--------------------- end of PrintHello thread " << t);
     }
   MESSAGE(" ---- end of PrintHello threads ---- ");
@@ -101,9 +106,14 @@ SALOMETraceCollectorTest::testLoadBufferPoolCORBA()
 
 void *PrintHello(void *threadid)
 {
+#if defined(_DEBUG_) || defined(_DEBUG)
   long id_thread = (long)threadid;
-      for (int i=0; i<NUM_MESSAGES;i++)        
-       MESSAGE("Hello World! This is a trace test : " << id_thread 
-               << " - iter " << i);
+      for (int i=0; i<NUM_MESSAGES;i++) 
+        MESSAGE("Hello World! This is a trace test : " << id_thread 
+                << " - iter " << i);
+#endif
   pthread_exit(NULL);
+#ifdef WIN32
+  return NULL;
+#endif
 }