overall timing for undo/redo ops
authorPaul Davis <paul@linuxaudiosystems.com>
Thu, 18 Feb 2010 16:34:09 +0000 (16:34 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Thu, 18 Feb 2010 16:34:09 +0000 (16:34 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@6699 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/pbd/undo.cc

index 8d6510191372f1a122f0eb0ae78bbd248bc613a6..223c533ff80141ab0c569b2066d31336d7983323 100644 (file)
@@ -122,15 +122,25 @@ UndoTransaction::operator() ()
 void
 UndoTransaction::undo ()
 {
+       struct timeval start, end, diff;
+       gettimeofday (&start, 0);
        for (list<Command*>::reverse_iterator i = actions.rbegin(); i != actions.rend(); ++i) {
                (*i)->undo();
        }
+       gettimeofday (&end, 0);
+       timersub (&end, &start, &diff);
+       cerr << "Undo took " << diff.tv_sec << '.' << diff.tv_usec << endl;
 }
 
 void
 UndoTransaction::redo ()
 {
+       struct timeval start, end, diff;
+       gettimeofday (&start, 0);
         (*this)();
+       gettimeofday (&end, 0);
+       timersub (&end, &start, &diff);
+       cerr << "Undo took " << diff.tv_sec << '.' << diff.tv_usec << endl;
 }
 
 XMLNode &UndoTransaction::get_state()