code: double[] get_delta_t(int nb) throws DevFailed
  	{
  		// Throw exception if nothing in ring
  		if (size() < 2)
  		{
  			Except.throw_exception("API_PollRingBufferEmpty",
  				        "Not enough data stored yet in polling ring buffer",
  				        "PollRing.get_delta_t");
  		}
  
  		// Compute how many delta can be computed
  		if (nb >= size())
  			nb = size() - 1;
  		double[]	result = new double[nb];
  		int	start = size() - nb - 1;
  		if (start<0)
  			start = 0;
  
  		// The delta t computing loop
  		for (int i=start, idx=0 ; i<size()-1 ; i++, idx++)
  		{
  			//	Get concerned  elements
  			RingElt	ref = (RingElt)elementAt(i+1);
  			RingElt	prev = (RingElt)elementAt(i);
  
  			//	Get tim,e as double
  			double t_ref  = (double)ref.when.tv_sec  +
  						((double)ref.when.tv_usec / 1000000);
  			double t_prev = (double)prev.when.tv_sec +
  						((double)prev.when.tv_usec / 1000000);
  
  			//	Get difference
  			result[idx] = t_ref - t_prev;
  		}
  		return result;
  	}
docs: ==========================================================================