/** {@inheritDoc} */
 public final StopwatchSample getStopwatchSampleAndReset(String name) {
   Simon s = manager.getSimon(name);
   if (s != null && s instanceof Stopwatch) {
     return new StopwatchSample((org.javasimon.StopwatchSample) s.sampleAndReset());
   }
   return null;
 }
 /** {@inheritDoc} */
 public final CounterSample getCounterSample(String name) {
   Simon s = manager.getSimon(name);
   if (s != null && s instanceof Counter) {
     return new CounterSample((org.javasimon.CounterSample) s.sample());
   }
   return null;
 }
 /** {@inheritDoc} */
 public final SimonInfo[] getSimonInfos() {
   Collection<String> sn = manager.simonNames();
   SimonInfo[] si = new SimonInfo[sn.size()];
   int i = 0;
   for (String name : sn) {
     Simon s = manager.getSimon(name);
     si[i++] =
         new SimonInfo(
             name,
             s instanceof Stopwatch
                 ? SimonInfo.STOPWATCH
                 : s instanceof Counter ? SimonInfo.COUNTER : SimonInfo.UNKNOWN);
   }
   return si;
 }
 /** {@inheritDoc} */
 public final void inheritState(String name) {
   manager.getSimon(name).setState(SimonState.INHERIT, false);
 }
 /** {@inheritDoc} */
 public final void disableSimon(String name) {
   manager.getSimon(name).setState(SimonState.DISABLED, false);
 }
 /** {@inheritDoc} */
 public final String getType(String name) {
   Simon s = manager.getSimon(name);
   return s != null ? s instanceof Stopwatch ? SimonInfo.STOPWATCH : SimonInfo.COUNTER : null;
 }
 /** {@inheritDoc} */
 public void reset(String name) {
   manager.getSimon(name).reset();
 }