Class IDProperty


  • public class IDProperty
    extends CFacade
    Generated facet for DNA struct type 'IDProperty'.

    Class Documentation

    Java .Blend

    ID properties are a generic method to store a linked list of additional information at IDs (see ID.
    • Field Detail

      • __DNA__SDNA_INDEX

        public static final int __DNA__SDNA_INDEX
        This is the sdna index of the struct IDProperty.

        It is required when allocating a new block to store data for IDProperty.

        See Also:
        StructDNA, BlockTable, Constant Field Values
      • __DNA__FIELD__next

        public static final long[] __DNA__FIELD__next
        Field descriptor (offset) for struct member 'next'.

        Field Documentation

        Java .Blend

        reference on the next element in linked list

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__next);
         CPointer<CPointer<IDProperty>> p_next = p.cast(new Class[]{CPointer.class, IDProperty.class});
         

        Metadata

        • Field: 'next'
        • Signature: 'IDProperty*'
        • Actual Size (32bit/64bit): 4/8
      • __DNA__FIELD__prev

        public static final long[] __DNA__FIELD__prev
        Field descriptor (offset) for struct member 'prev'.

        Field Documentation

        Java .Blend

        reference on previous element in linked list

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__prev);
         CPointer<CPointer<IDProperty>> p_prev = p.cast(new Class[]{CPointer.class, IDProperty.class});
         

        Metadata

        • Field: 'prev'
        • Signature: 'IDProperty*'
        • Actual Size (32bit/64bit): 4/8
      • __DNA__FIELD__type

        public static final long[] __DNA__FIELD__type
        Field descriptor (offset) for struct member 'type'.

        Field Documentation

        Java .Blend

        Type of the property data. One of
                                                                        IDP_STRING              0
                                                                        IDP_INT                 1
                                                                        IDP_FLOAT               2
                                                                        IDP_ARRAY               5
                                                                        IDP_GROUP               6
                                                                        IDP_ID                  7
                                                                        IDP_DOUBLE              8
                                                                        IDP_IDPARRAY    9
                                                                        IDP_NUMTYPES    10
                                                        

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__type);
         CPointer<Byte> p_type = p.cast(new Class[]{Byte.class});
         

        Metadata

        • Field: 'type'
        • Signature: 'char'
        • Actual Size (32bit/64bit): 1/1
      • __DNA__FIELD__subtype

        public static final long[] __DNA__FIELD__subtype
        Field descriptor (offset) for struct member 'subtype'.

        Field Documentation

        Java .Blend

        Subtype of the property data. One of
                                                                IDP_STRING_SUB_UTF8  0 ( default )
                                                                IDP_STRING_SUB_BYTE  1 ( arbitrary byte array, _not_ null terminated )
                                                        

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__subtype);
         CPointer<Byte> p_subtype = p.cast(new Class[]{Byte.class});
         

        Metadata

        • Field: 'subtype'
        • Signature: 'char'
        • Actual Size (32bit/64bit): 1/1
      • __DNA__FIELD__flag

        public static final long[] __DNA__FIELD__flag
        Field descriptor (offset) for struct member 'flag'.

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__flag);
         CPointer<Short> p_flag = p.cast(new Class[]{Short.class});
         

        Metadata

        • Field: 'flag'
        • Signature: 'short'
        • Actual Size (32bit/64bit): 2/2
      • __DNA__FIELD__name

        public static final long[] __DNA__FIELD__name
        Field descriptor (offset) for struct member 'name'.

        Field Documentation

        Java .Blend

        properties' name

        Blender Source Code

        MAX_IDPROP_NAME.

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__name);
         CPointer<CArrayFacade<Byte>> p_name = p.cast(new Class[]{CArrayFacade.class, Byte.class});
         

        Metadata

        • Field: 'name'
        • Signature: 'char[64]'
        • Actual Size (32bit/64bit): 64/64
      • __DNA__FIELD__saved

        public static final long[] __DNA__FIELD__saved
        Field descriptor (offset) for struct member 'saved'.

        Field Documentation

        Java .Blend

        saved is used to indicate if this struct has been saved yet.

        Blender Source Code

        saved is used to indicate if this struct has been saved yet. seemed like a good idea as a '_pad' var was needed anyway :)

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__saved);
         CPointer<Integer> p_saved = p.cast(new Class[]{Integer.class});
         

        Metadata

        • Field: 'saved'
        • Signature: 'int'
        • Actual Size (32bit/64bit): 4/4
      • __DNA__FIELD__data

        public static final long[] __DNA__FIELD__data
        Field descriptor (offset) for struct member 'data'.

        Field Documentation

        Java .Blend

        properties' data. note, alignment for 64 bits

        Blender Source Code

        NOTE: alignment for 64 bits.

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__data);
         CPointer<IDPropertyData> p_data = p.cast(new Class[]{IDPropertyData.class});
         

        Metadata

        • Field: 'data'
        • Signature: 'IDPropertyData'
        • Actual Size (32bit/64bit): 20/32
      • __DNA__FIELD__len

        public static final long[] __DNA__FIELD__len
        Field descriptor (offset) for struct member 'len'.

        Field Documentation

        Java .Blend

        array length, also (this is important!) string length + 1. the idea is to be able to reuse array realloc functions on strings.

        Blender Source Code

        Array length, also (this is important!) string length + 1. the idea is to be able to reuse array realloc functions on strings.

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__len);
         CPointer<Integer> p_len = p.cast(new Class[]{Integer.class});
         

        Metadata

        • Field: 'len'
        • Signature: 'int'
        • Actual Size (32bit/64bit): 4/4
      • __DNA__FIELD__totallen

        public static final long[] __DNA__FIELD__totallen
        Field descriptor (offset) for struct member 'totallen'.

        Field Documentation

        Java .Blend

        totallen is total length of allocated array/string, including a buffer. Note that the buffering is mild; the code comes from python's list implementation. Strings and arrays are both buffered, though the buffer isn't saved.

        Blender Source Code

        Strings and arrays are both buffered, though the buffer isn't saved. totallen is total length of allocated array/string, including a buffer. Note that the buffering is mild; the code comes from python's list implementation.

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__totallen);
         CPointer<Integer> p_totallen = p.cast(new Class[]{Integer.class});
         

        Metadata

        • Field: 'totallen'
        • Signature: 'int'
        • Actual Size (32bit/64bit): 4/4
      • __DNA__FIELD__ui_data

        public static final long[] __DNA__FIELD__ui_data
        Field descriptor (offset) for struct member 'ui_data'.

        Pointer Arithmetics

        This is how you get a reference on the corresponding field in the struct:

         IDProperty idproperty = ...;
         CPointer<Object> p = idproperty.__dna__addressof(IDProperty.__DNA__FIELD__ui_data);
         CPointer<CPointer<IDPropertyUIData>> p_ui_data = p.cast(new Class[]{CPointer.class, IDPropertyUIData.class});
         

        Metadata

        • Field: 'ui_data'
        • Signature: 'IDPropertyUIData*'
        • Actual Size (32bit/64bit): 4/8
    • Constructor Detail

      • IDProperty

        public IDProperty​(long __address,
                          Block __block,
                          BlockTable __blockTable)
      • IDProperty

        protected IDProperty​(IDProperty that)
    • Method Detail

      • getNext

        public CPointer<IDProperty> getNext()
                                     throws java.io.IOException
        Get method for struct member 'next'.

        Field Documentation

        Java .Blend

        reference on the next element in linked list
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__next
      • setNext

        public void setNext​(CPointer<IDProperty> next)
                     throws java.io.IOException
        Set method for struct member 'next'.

        Field Documentation

        Java .Blend

        reference on the next element in linked list
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__next
      • getPrev

        public CPointer<IDProperty> getPrev()
                                     throws java.io.IOException
        Get method for struct member 'prev'.

        Field Documentation

        Java .Blend

        reference on previous element in linked list
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__prev
      • setPrev

        public void setPrev​(CPointer<IDProperty> prev)
                     throws java.io.IOException
        Set method for struct member 'prev'.

        Field Documentation

        Java .Blend

        reference on previous element in linked list
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__prev
      • getType

        public byte getType()
                     throws java.io.IOException
        Get method for struct member 'type'.

        Field Documentation

        Java .Blend

        Type of the property data. One of
                                                                        IDP_STRING              0
                                                                        IDP_INT                 1
                                                                        IDP_FLOAT               2
                                                                        IDP_ARRAY               5
                                                                        IDP_GROUP               6
                                                                        IDP_ID                  7
                                                                        IDP_DOUBLE              8
                                                                        IDP_IDPARRAY    9
                                                                        IDP_NUMTYPES    10
                                                        
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__type
      • setType

        public void setType​(byte type)
                     throws java.io.IOException
        Set method for struct member 'type'.

        Field Documentation

        Java .Blend

        Type of the property data. One of
                                                                        IDP_STRING              0
                                                                        IDP_INT                 1
                                                                        IDP_FLOAT               2
                                                                        IDP_ARRAY               5
                                                                        IDP_GROUP               6
                                                                        IDP_ID                  7
                                                                        IDP_DOUBLE              8
                                                                        IDP_IDPARRAY    9
                                                                        IDP_NUMTYPES    10
                                                        
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__type
      • getSubtype

        public byte getSubtype()
                        throws java.io.IOException
        Get method for struct member 'subtype'.

        Field Documentation

        Java .Blend

        Subtype of the property data. One of
                                                                IDP_STRING_SUB_UTF8  0 ( default )
                                                                IDP_STRING_SUB_BYTE  1 ( arbitrary byte array, _not_ null terminated )
                                                        
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__subtype
      • setSubtype

        public void setSubtype​(byte subtype)
                        throws java.io.IOException
        Set method for struct member 'subtype'.

        Field Documentation

        Java .Blend

        Subtype of the property data. One of
                                                                IDP_STRING_SUB_UTF8  0 ( default )
                                                                IDP_STRING_SUB_BYTE  1 ( arbitrary byte array, _not_ null terminated )
                                                        
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__subtype
      • getFlag

        public short getFlag()
                      throws java.io.IOException
        Get method for struct member 'flag'.
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__flag
      • setFlag

        public void setFlag​(short flag)
                     throws java.io.IOException
        Set method for struct member 'flag'.
        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__flag
      • getName

        public CArrayFacade<java.lang.Byte> getName()
                                             throws java.io.IOException
        Get method for struct member 'name'.

        Field Documentation

        Java .Blend

        properties' name

        Blender Source Code

        MAX_IDPROP_NAME.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__name
      • setName

        public void setName​(CArrayFacade<java.lang.Byte> name)
                     throws java.io.IOException
        Set method for struct member 'name'.

        Field Documentation

        Java .Blend

        properties' name

        Blender Source Code

        MAX_IDPROP_NAME.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__name
      • getSaved

        public int getSaved()
                     throws java.io.IOException
        Get method for struct member 'saved'.

        Field Documentation

        Java .Blend

        saved is used to indicate if this struct has been saved yet.

        Blender Source Code

        saved is used to indicate if this struct has been saved yet. seemed like a good idea as a '_pad' var was needed anyway :)

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__saved
      • setSaved

        public void setSaved​(int saved)
                      throws java.io.IOException
        Set method for struct member 'saved'.

        Field Documentation

        Java .Blend

        saved is used to indicate if this struct has been saved yet.

        Blender Source Code

        saved is used to indicate if this struct has been saved yet. seemed like a good idea as a '_pad' var was needed anyway :)

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__saved
      • getData

        public IDPropertyData getData()
                               throws java.io.IOException
        Get method for struct member 'data'.

        Field Documentation

        Java .Blend

        properties' data. note, alignment for 64 bits

        Blender Source Code

        NOTE: alignment for 64 bits.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__data
      • setData

        public void setData​(IDPropertyData data)
                     throws java.io.IOException
        Set method for struct member 'data'.

        Field Documentation

        Java .Blend

        properties' data. note, alignment for 64 bits

        Blender Source Code

        NOTE: alignment for 64 bits.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__data
      • getLen

        public int getLen()
                   throws java.io.IOException
        Get method for struct member 'len'.

        Field Documentation

        Java .Blend

        array length, also (this is important!) string length + 1. the idea is to be able to reuse array realloc functions on strings.

        Blender Source Code

        Array length, also (this is important!) string length + 1. the idea is to be able to reuse array realloc functions on strings.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__len
      • setLen

        public void setLen​(int len)
                    throws java.io.IOException
        Set method for struct member 'len'.

        Field Documentation

        Java .Blend

        array length, also (this is important!) string length + 1. the idea is to be able to reuse array realloc functions on strings.

        Blender Source Code

        Array length, also (this is important!) string length + 1. the idea is to be able to reuse array realloc functions on strings.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__len
      • getTotallen

        public int getTotallen()
                        throws java.io.IOException
        Get method for struct member 'totallen'.

        Field Documentation

        Java .Blend

        totallen is total length of allocated array/string, including a buffer. Note that the buffering is mild; the code comes from python's list implementation. Strings and arrays are both buffered, though the buffer isn't saved.

        Blender Source Code

        Strings and arrays are both buffered, though the buffer isn't saved. totallen is total length of allocated array/string, including a buffer. Note that the buffering is mild; the code comes from python's list implementation.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__totallen
      • setTotallen

        public void setTotallen​(int totallen)
                         throws java.io.IOException
        Set method for struct member 'totallen'.

        Field Documentation

        Java .Blend

        totallen is total length of allocated array/string, including a buffer. Note that the buffering is mild; the code comes from python's list implementation. Strings and arrays are both buffered, though the buffer isn't saved.

        Blender Source Code

        Strings and arrays are both buffered, though the buffer isn't saved. totallen is total length of allocated array/string, including a buffer. Note that the buffering is mild; the code comes from python's list implementation.

        Throws:
        java.io.IOException
        See Also:
        __DNA__FIELD__totallen
      • __io__addressof

        public CPointer<IDProperty> __io__addressof()
        Instantiates a pointer on this instance.