public virtual void OnObjectDestroyed <T>(T value)
 {
     if (CallBackStore <T> .DestroyListerner != null)
     {
         CallBackStore <T> .DestroyListerner(value);
     }
 }
 public virtual void OnObjectCreated <T>(T value)
 {
     if (CallBackStore <T> .CreateListerner != null)
     {
         CallBackStore <T> .CreateListerner(value);
     }
 }