BsMonoArray.cpp 636 B

1234567891011121314151617181920212223242526272829
  1. #include "BsMonoArray.h"
  2. #include "BsMonoManager.h"
  3. #include "BsMonoClass.h"
  4. namespace BansheeEngine
  5. {
  6. ScriptArray::ScriptArray(MonoArray* existingArray)
  7. :mInternal(existingArray)
  8. {
  9. }
  10. ScriptArray::ScriptArray(MonoClass& klass, UINT32 size)
  11. : mInternal(nullptr)
  12. {
  13. mInternal = mono_array_new(MonoManager::instance().getDomain(), klass._getInternalClass(), size);
  14. }
  15. ScriptArray::ScriptArray(::MonoClass* klass, UINT32 size)
  16. : mInternal(nullptr)
  17. {
  18. mInternal = mono_array_new(MonoManager::instance().getDomain(), klass, size);
  19. }
  20. UINT32 ScriptArray::size() const
  21. {
  22. return (UINT32)mono_array_length(mInternal);
  23. }
  24. }