]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkObject.cxx
*** empty log message ***
[bbtk.git] / kernel / src / bbtkObject.cxx
index 6f425642effcc28abac6cd2226ddf20045a7cebe..304fa1de856e68e465d65fcc1f4f4ef93bed0986 100644 (file)
@@ -59,7 +59,7 @@ namespace bbtk
   //=======================================================================
   
   //=======================================================================
-  void Object::PrintObjectListInfo()
+  void Object::PrintObjectListInfo(const std::string& name)
   {
     
     std::cout 
@@ -80,9 +80,13 @@ namespace bbtk
        else 
          { 
            Object::Pointer p(i->lock());
-           PrintObjectInfo(p);
-           n++;
-           m += p->GetObjectSize();
+           if (p->GetObjectName().find(name) != std::string::npos ) 
+             {
+               std::cout << n << "/" << mgObjectList.size() << " ";
+               PrintObjectInfo(p);
+               m += p->GetObjectSize();
+               n++;
+             }
          }
       }
     std::cout 
@@ -107,6 +111,7 @@ namespace bbtk
   }
   //=======================================================================
 
+  /*
   //=======================================================================
   void Object::PrintObjectInfo(const std::string& name)
   {
@@ -127,7 +132,7 @@ namespace bbtk
       }
   }
   //=======================================================================
-
+  */
   //=======================================================================
   void Object::PrintObjectInfo(const Object::Pointer& p)
   {
@@ -178,10 +183,32 @@ namespace bbtk
     if (PrintObjectListInfo) 
       {
        std::cout << std::endl
-                 << "***************** main ended *******************"
+                 << "************************** main ended *******************"
                  << std::endl << std::endl;
-       Object::PrintObjectListInfo();
+       Object::PrintObjectListInfo("");
       }
+    if (Object::GetObjectsCount()>0)
+      {
+       std::cout << std::endl;
+       std::cout << "**************************** WARNING *************************"
+                 <<std::endl; 
+       std::cout << "**** "<< Object::GetObjectsCount()
+                 <<" bbtk objects still alive after main ended"<<std::endl;
+       if (!PrintObjectListInfo) 
+         {
+           
+           std::cout << "**** "
+                     <<"Rerun bbi with -D option or put 'debug -D' in bbs file"
+                 <<std::endl;
+           std::cout << "**** "
+                     <<"to view the objects list "
+                     <<std::endl;
+         }
+       std::cout << "**************************************************************"
+                 <<std::endl
+                 <<std::endl;
+
+     }
   }
   //=======================================================================
   //=======================================================================