The framework defines the following custom types. You can see them all in the list below.

Caution

You shouldn't use containers from the standard C++ library directly. We provide custom definitions for all standard library containers with a custom allocator in order to allow for plugin support on Windows. It's good practice to use our custom types, but if you're not developing with plugin support in mind you're free to not obey this rule.

C & C++ types:

  1. UImGui_FVector2/FVector2 - 2D float vector
  2. UImGui_FVector/FVector - 3D float vector
  3. UImGui_FVector4/FVector4 - 4D float vector
  4. UImGui_String/String - C string a.k.a. const char*

C++ containers:

  1. FString - Equivalent to std::string
  2. FString8 - Equivalent to std::string
  3. FString16 - Equivalent to std::u16string
  4. FString32 - Equivalent to std::u32string
  5. FWString - Equivalent to std::wstring
  6. TVector - Equivalent to std::vector
  7. TQueue - Equivalent to std::queue
  8. TDeque - Equivalent to std::deque
  9. TPriorityQueue - Equivalent to std::priority_queue
  10. TStack - Equivalent to std::stack
  11. TForwardList - Equivalent to std::forward_list
  12. TList - Equivalent to std::list
  13. TUnorderedSet - Equivalent to phmap::parallel_flat_hash_set
  14. TSet - Equivalent to phmap::btree_set
  15. TSTDSet - Equivalent to std::set
  16. TSTDUnorderedSet - Equivalent to std::unordered_set
  17. TMultiset - Equivalent to phmap::btree_multiset
  18. TSTDMultiset - Equivalent to std::multiset
  19. TSTDUnorderedMultiset - Equivalent to std::unordered_multiset
  20. TMap - Equivalent to phmap::btree_map
  21. TSTDMap - Equivalent to std::map
  22. TMultimap - Equivalent to phmap::btree_multimap
  23. TSTDMultimap - Equivalent to std::multimap
  24. TSTDUnorderedMap - Equivalent to std::unordered_map
  25. TUnorderedMap - Equivalent to phmap::parallel_flat_hash_map
  26. TSTDUnorderedMultimap - Equivalent to std::unordered_multimap