/// <summary>
 /// Unregisters a hook.
 /// </summary>
 /// <param name="hook">The hook.</param>
 public virtual void UnregisterHook(IBailleIORendererHook hook)
 {
     if (hooks.ContainsKey(hook.GetHashCode()))
     {
         hooks.TryRemove(hook.GetHashCode(), out hook);
     }
 }
 /// <summary>
 /// Register a hook.
 /// </summary>
 /// <param name="hook">The hook.</param>
 public virtual void RegisterHook(IBailleIORendererHook hook)
 {
     if (!hooks.ContainsKey(hook.GetHashCode()))
     {
         hooks[hook.GetHashCode()] = hook;
     }
 }