text: // This file is generated by Ubpa::USRefl::AutoRefl
  
  #pragma once
  
  #include <USRefl/USRefl.h>
  
  template<>
  struct Ubpa::USRefl::TypeInfo<Ubpa::UECS::EntityMngr>
      : Ubpa::USRefl::TypeInfoBase<Ubpa::UECS::EntityMngr>
  {
      static constexpr AttrList attrs = {};
  
  	static constexpr FieldList fields = {
  		Field{Name::constructor, Ubpa::USRefl::WrapConstructor<Ubpa::UECS::EntityMngr()>()},
  		Field{Name::constructor, Ubpa::USRefl::WrapConstructor<Ubpa::UECS::EntityMngr(const Ubpa::UECS::EntityMngr&)>()},
  		Field{"cmptTraits", &Ubpa::UECS::EntityMngr::cmptTraits},
          Field{"Create",
              static_cast<Ubpa::UECS::Entity(Ubpa::UECS::EntityMngr::*)(const Ubpa::UECS::CmptType*, size_t)> (&Ubpa::UECS::EntityMngr::Create),
          },
          Field{"Instantiate", &Ubpa::UECS::EntityMngr::Instantiate},
          Field{"Attach",
              static_cast<void(Ubpa::UECS::EntityMngr::*)(Ubpa::UECS::Entity, const Ubpa::UECS::CmptType*, size_t)> (&Ubpa::UECS::EntityMngr::Attach),
          },
  		Field{"Detach", &Ubpa::UECS::EntityMngr::Detach},
          Field{"Have", &Ubpa::UECS::EntityMngr::Have},
  		Field{"Get", &Ubpa::UECS::EntityMngr::Get},
          Field{"Components", &Ubpa::UECS::EntityMngr::Components},
          Field{"Exist", &Ubpa::UECS::EntityMngr::Exist},
  		Field{"Destroy", &Ubpa::UECS::EntityMngr::Destroy},
  		Field{"TotalEntityNum", &Ubpa::UECS::EntityMngr::TotalEntityNum},
  		Field{"EntityNum", &Ubpa::UECS::EntityMngr::EntityNum},
  		Field{"GetEntityFreeEntries", &Ubpa::UECS::EntityMngr::GetEntityFreeEntries},
  		Field{"GetEntityVersion", &Ubpa::UECS::EntityMngr::GetEntityVersion},
  		Field{"LocateSingletons", &Ubpa::UECS::EntityMngr::LocateSingletons},
  		Field{"IsSingleton", &Ubpa::UECS::EntityMngr::IsSingleton},
  		Field{"GetSingletonEntity", &Ubpa::UECS::EntityMngr::GetSingletonEntity},
  		Field{"GetSingleton",
              static_cast<Ubpa::UECS::CmptPtr(Ubpa::UECS::EntityMngr::*)(Ubpa::UECS::CmptType)const>(&Ubpa::UECS::EntityMngr::GetSingleton),
  		},
          Field{"Accept", &Ubpa::UECS::EntityMngr::Accept},
      };
  };
  