protected void OnContainerFull(DataStructEventArgs <T> e)
 {
     ContainerFull?.Invoke(this, e);
 }
 protected void OnRemoveElement(DataStructEventArgs <T> e)
 {
     RemoveElement?.Invoke(this, e);
 }
 protected void OnContainerEmpty(DataStructEventArgs <T> e)
 {
     ContainerEmpty?.Invoke(this, e);
 }
 protected void OnAddElement(DataStructEventArgs <T> e)
 {
     AddElement?.Invoke(this, e);
 }