Open Search
    basearray.h File Reference

    Classes

    class  BaseArray< T, MINCHUNKSIZE, MEMFLAGS, ALLOCATOR >
     
    struct  GenericCastMemberTrait< BaseArray< TO >, BaseArray< FROM >, SAFE >
     
    class  BaseArraySelector< MINCHUNKSIZE, MEMFLAGS, ALLOCATOR >
     
    class  BufferedBaseArraySelector< COUNT, MINCHUNKSIZE, MEMFLAGS, ALLOCATOR >
     
    struct  IsZeroInitialized< BaseArray< T, MINCHUNKSIZE, MEMFLAGS, ALLOCATOR > >
     

    Namespaces

     maxon
     

    Typedefs

    template<typename T , Int COUNT, Int MINCHUNKSIZE = COUNT, BASEARRAYFLAGS MEMFLAGS = BASEARRAYFLAGS::NONE, typename ALLOCATOR = DefaultAllocator>
    using BufferedBaseArray = typename BufferedBaseArraySelector< COUNT, MINCHUNKSIZE, MEMFLAGS, ALLOCATOR >::template Type< T >
     

    Enumerations

    enum class  BASEARRAYFLAGS {
      NONE ,
      MOVEANDCOPYOBJECTS ,
      ZEROINITIALIZE
    }
     

    Functions

    enum maxon::BASEARRAYFLAGS MAXON_ENUM_FLAGS (BASEARRAYFLAGS)
     

    Variables

     NONE
     
     MOVEANDCOPYOBJECTS
     
     ZEROINITIALIZE
     
    static const Int BASEARRAY_DEFAULT_CHUNK_SIZE
     

    Variable Documentation

    ◆ NONE

    NONE

    Use constructor/destructor or move operator unless the type is trivially copyable using memcpy, memmove or realloc.

    ◆ MOVEANDCOPYOBJECTS

    MOVEANDCOPYOBJECTS

    Elements are PODs and can be copied using memcpy and moved using memmove/realloc (for Resize, Insert, Erase, Append etc.). Overrides the setting of std::is_trivially_copyable<T>

    ◆ ZEROINITIALIZE

    ZEROINITIALIZE

    Zero initializes before calling the constructor.