protected void NotifyDetectorVolumeOfChanges()
 {
     //Don't notify the detector volume if we have a parent.  The parent will analyze our state.
     if (Parent == null)
     {
         //Beware the order!
         //Starts touching -> starts containing
         if (!WasTouching && Touching)
         {
             DetectorVolume.BeganTouching(this);
         }
         if (!WasContaining && Containing)
         {
             DetectorVolume.BeganContaining(this);
         }
         //Stops containing -> stops touching
         if (WasContaining && !Containing)
         {
             DetectorVolume.StoppedContaining(this);
         }
         if (WasTouching && !Touching)
         {
             DetectorVolume.StoppedTouching(this);
         }
     }
 }