# File lib/rcov.rb, line 418
  def remove_hook
    @@mutex.synchronize do 
      self.class.hook_level -= 1
      Rcov::RCOV__.send(@remove_hook_meth) if self.class.hook_level == 0
    end
    @end_raw_data = raw_data_absolute
    @cache_state = :done
    # force computation of the stats for the traced code in this run;
    # we cannot simply let it be if self.class.hook_level == 0 because 
    # some other analyzer could install a hook, causing the raw_data_absolute
    # to change again.
    # TODO: lazy computation of raw_data_relative, only when the hook gets
    # activated again.
    raw_data_relative
  end