Class ID
- java.lang.Object
-
- org.cakelab.blender.nio.CFacade
-
- org.blender.dna.ID
-
public class ID extends CFacade
Generated facet for DNA struct type 'ID'.Class Documentation
Java .Blend
Represents the ID of any element in DNA which is stored in a library (seeLibrary
). Those elements are instances of structs which contain an embedded member of type ID as their first element.
IDs of the same element type are linked in linked list (seeLink
)Blender Source Code
There's a nasty circular dependency here.... 'void *' to the rescue! I really wonder why this is needed.
-
-
Field Summary
Fields Modifier and Type Field Description static long[]
__DNA__FIELD__asset_data
Field descriptor (offset) for struct member 'asset_data'.static long[]
__DNA__FIELD__flag
Field descriptor (offset) for struct member 'flag'.static long[]
__DNA__FIELD__icon_id
Field descriptor (offset) for struct member 'icon_id'.static long[]
__DNA__FIELD__lib
Field descriptor (offset) for struct member 'lib'.static long[]
__DNA__FIELD__library_weak_reference
Field descriptor (offset) for struct member 'library_weak_reference'.static long[]
__DNA__FIELD__name
Field descriptor (offset) for struct member 'name'.static long[]
__DNA__FIELD__newid
Field descriptor (offset) for struct member 'newid'.static long[]
__DNA__FIELD__next
Field descriptor (offset) for struct member 'next'.static long[]
__DNA__FIELD__orig_id
Field descriptor (offset) for struct member 'orig_id'.static long[]
__DNA__FIELD__override_library
Field descriptor (offset) for struct member 'override_library'.static long[]
__DNA__FIELD__prev
Field descriptor (offset) for struct member 'prev'.static long[]
__DNA__FIELD__properties
Field descriptor (offset) for struct member 'properties'.static long[]
__DNA__FIELD__py_instance
Field descriptor (offset) for struct member 'py_instance'.static long[]
__DNA__FIELD__recalc
Field descriptor (offset) for struct member 'recalc'.static long[]
__DNA__FIELD__recalc_after_undo_push
Field descriptor (offset) for struct member 'recalc_after_undo_push'.static long[]
__DNA__FIELD__recalc_up_to_undo_push
Field descriptor (offset) for struct member 'recalc_up_to_undo_push'.static long[]
__DNA__FIELD__runtime
Field descriptor (offset) for struct member 'runtime'.static long[]
__DNA__FIELD__session_uuid
Field descriptor (offset) for struct member 'session_uuid'.static long[]
__DNA__FIELD__tag
Field descriptor (offset) for struct member 'tag'.static long[]
__DNA__FIELD__us
Field descriptor (offset) for struct member 'us'.static int
__DNA__SDNA_INDEX
This is the sdna index of the struct ID.-
Fields inherited from class org.cakelab.blender.nio.CFacade
__io__address, __io__arch_index, __io__block, __io__blockTable, __io__pointersize
-
-
Constructor Summary
Constructors Modifier Constructor Description ID(long __address, Block __block, BlockTable __blockTable)
protected
ID(ID that)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CPointer<ID>
__io__addressof()
Instantiates a pointer on this instance.CPointer<AssetMetaData>
getAsset_data()
Get method for struct member 'asset_data'.short
getFlag()
Get method for struct member 'flag'.int
getIcon_id()
Get method for struct member 'icon_id'.CPointer<Library>
getLib()
Get method for struct member 'lib'.CPointer<LibraryWeakReference>
getLibrary_weak_reference()
Get method for struct member 'library_weak_reference'.CArrayFacade<java.lang.Byte>
getName()
Get method for struct member 'name'.CPointer<ID>
getNewid()
Get method for struct member 'newid'.CPointer<java.lang.Object>
getNext()
Get method for struct member 'next'.CPointer<ID>
getOrig_id()
Get method for struct member 'orig_id'.CPointer<IDOverrideLibrary>
getOverride_library()
Get method for struct member 'override_library'.CPointer<java.lang.Object>
getPrev()
Get method for struct member 'prev'.CPointer<IDProperty>
getProperties()
Get method for struct member 'properties'.CPointer<java.lang.Object>
getPy_instance()
Get method for struct member 'py_instance'.int
getRecalc()
Get method for struct member 'recalc'.int
getRecalc_after_undo_push()
Get method for struct member 'recalc_after_undo_push'.int
getRecalc_up_to_undo_push()
Get method for struct member 'recalc_up_to_undo_push'.ID_Runtime
getRuntime()
Get method for struct member 'runtime'.int
getSession_uuid()
Get method for struct member 'session_uuid'.int
getTag()
Get method for struct member 'tag'.int
getUs()
Get method for struct member 'us'.void
setAsset_data(CPointer<AssetMetaData> asset_data)
Set method for struct member 'asset_data'.void
setFlag(short flag)
Set method for struct member 'flag'.void
setIcon_id(int icon_id)
Set method for struct member 'icon_id'.void
setLib(CPointer<Library> lib)
Set method for struct member 'lib'.void
setLibrary_weak_reference(CPointer<LibraryWeakReference> library_weak_reference)
Set method for struct member 'library_weak_reference'.void
setName(CArrayFacade<java.lang.Byte> name)
Set method for struct member 'name'.void
setNewid(CPointer<ID> newid)
Set method for struct member 'newid'.void
setNext(CPointer<java.lang.Object> next)
Set method for struct member 'next'.void
setOrig_id(CPointer<ID> orig_id)
Set method for struct member 'orig_id'.void
setOverride_library(CPointer<IDOverrideLibrary> override_library)
Set method for struct member 'override_library'.void
setPrev(CPointer<java.lang.Object> prev)
Set method for struct member 'prev'.void
setProperties(CPointer<IDProperty> properties)
Set method for struct member 'properties'.void
setPy_instance(CPointer<java.lang.Object> py_instance)
Set method for struct member 'py_instance'.void
setRecalc(int recalc)
Set method for struct member 'recalc'.void
setRecalc_after_undo_push(int recalc_after_undo_push)
Set method for struct member 'recalc_after_undo_push'.void
setRecalc_up_to_undo_push(int recalc_up_to_undo_push)
Set method for struct member 'recalc_up_to_undo_push'.void
setRuntime(ID_Runtime runtime)
Set method for struct member 'runtime'.void
setSession_uuid(int session_uuid)
Set method for struct member 'session_uuid'.void
setTag(int tag)
Set method for struct member 'tag'.void
setUs(int us)
Set method for struct member 'us'.-
Methods inherited from class org.cakelab.blender.nio.CFacade
__io__addressof, __io__addressof, __io__equals, __io__generic__copy, __io__generic__copy, __io__instanceof, __io__native__copy, __io__newInstance, __io__same__encoding, __io__sizeof, __io__sizeof, __io__subclassof, equals, hashCode
-
-
-
-
Field Detail
-
__DNA__SDNA_INDEX
public static final int __DNA__SDNA_INDEX
This is the sdna index of the struct ID.It is required when allocating a new block to store data for ID.
- 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 listPointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__next); CPointer<CPointer<Object>> p_next = p.cast(new Class[]{CPointer.class, Object.class});
Metadata
- Field: 'next'
- Signature: 'void*'
- 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 listPointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__prev); CPointer<CPointer<Object>> p_prev = p.cast(new Class[]{CPointer.class, Object.class});
Metadata
- Field: 'prev'
- Signature: 'void*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__newid
public static final long[] __DNA__FIELD__newid
Field descriptor (offset) for struct member 'newid'.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__newid); CPointer<CPointer<ID>> p_newid = p.cast(new Class[]{CPointer.class, ID.class});
Metadata
- Field: 'newid'
- Signature: 'ID*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__lib
public static final long[] __DNA__FIELD__lib
Field descriptor (offset) for struct member 'lib'.Field Documentation
Java .Blend
Reference on the library this library element belongs to.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__lib); CPointer<CPointer<Library>> p_lib = p.cast(new Class[]{CPointer.class, Library.class});
Metadata
- Field: 'lib'
- Signature: 'Library*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__asset_data
public static final long[] __DNA__FIELD__asset_data
Field descriptor (offset) for struct member 'asset_data'.Field Documentation
Blender Python API
(read-only) Additional data for an asset data-blockBlender Source Code
If the
ID
is an asset, this pointer is set. Owning pointer.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__asset_data); CPointer<CPointer<AssetMetaData>> p_asset_data = p.cast(new Class[]{CPointer.class, AssetMetaData.class});
Metadata
- Field: 'asset_data'
- Signature: 'AssetMetaData*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__name
public static final long[] __DNA__FIELD__name
Field descriptor (offset) for struct member 'name'.Field Documentation
Java .Blend
The name of the element. Names follow a certain convention.Names of library elements which have an specific block code, such as Mesh (ME) and Tex (ME), always have the first two ASCII characters of the block code as its prefix. Data of blocks with unspecified block code (i.e.
A few examples of names:BlockCodes.ID_DATA
) have other names.Element type Name prefix BlenderObject
"OB" Mesh
"ME" Material
"MA" Tex
"TE" CustomDataLayer
forMPoly
"NGon Face" CustomDataLayer
forMLoop
"NGon Face-Vertex" Blender Python API
Unique data-block ID nameBlender Source Code
MAX_ID_NAME.
Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__name); CPointer<CArrayFacade<Byte>> p_name = p.cast(new Class[]{CArrayFacade.class, Byte.class});
Metadata
- Field: 'name'
- Signature: 'char[66]'
- Actual Size (32bit/64bit): 66/66
-
__DNA__FIELD__flag
public static final long[] __DNA__FIELD__flag
Field descriptor (offset) for struct member 'flag'.Field Documentation
Java .Blend
In files usually 1024. One of:LIB_LOCAL 0 LIB_EXTERN 1 LIB_INDIRECT 2 LIB_NEED_EXPAND 8 LIB_TESTEXT (LIB_NEED_EXPAND | LIB_EXTERN) LIB_TESTIND (LIB_NEED_EXPAND | LIB_INDIRECT) LIB_READ 16 LIB_NEED_LINK 32 LIB_NEW 256 LIB_FAKEUSER 512 LIB_DOIT 1024 free test flag LIB_PRE_EXISTING 2048 tag existing data before linking so we know what is new LIB_ID_RECALC 4096 runtime LIB_ID_RECALC_DATA 8192 runtime Blender Source Code
LIB_... flags report on status of the data-block this
ID
belongs to (persistent, saved to and read from .blend).Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__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__tag
public static final long[] __DNA__FIELD__tag
Field descriptor (offset) for struct member 'tag'.Field Documentation
Blender Python API
Tools can use this to tag data for their own purposes (initial state is undefined)Blender Source Code
LIB_TAG_... tags (runtime only, cleared at read time).
Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__tag); CPointer<Integer> p_tag = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'tag'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__us
public static final long[] __DNA__FIELD__us
Field descriptor (offset) for struct member 'us'.Field Documentation
Java .Blend
Reference counter, counts number of references on the corresponding element. If 0, the element will not be stored in a file.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__us); CPointer<Integer> p_us = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'us'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__icon_id
public static final long[] __DNA__FIELD__icon_id
Field descriptor (offset) for struct member 'icon_id'.Field Documentation
Java .Blend
Always 0 in files. Will be recalculated base on the library element type when loaded.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__icon_id); CPointer<Integer> p_icon_id = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'icon_id'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__recalc
public static final long[] __DNA__FIELD__recalc
Field descriptor (offset) for struct member 'recalc'.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__recalc); CPointer<Integer> p_recalc = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'recalc'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__recalc_up_to_undo_push
public static final long[] __DNA__FIELD__recalc_up_to_undo_push
Field descriptor (offset) for struct member 'recalc_up_to_undo_push'.Field Documentation
Blender Source Code
Used by undo code. recalc_after_undo_push contains the changes between the last undo push and the current state. This is accumulated as IDs are tagged for update in the depsgraph, and only cleared on undo push.
recalc_up_to_undo_push is saved to undo memory, and is the value of recalc_after_undo_push at the time of the undo push. This means it can be used to find the changes between undo states.
Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__recalc_up_to_undo_push); CPointer<Integer> p_recalc_up_to_undo_push = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'recalc_up_to_undo_push'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__recalc_after_undo_push
public static final long[] __DNA__FIELD__recalc_after_undo_push
Field descriptor (offset) for struct member 'recalc_after_undo_push'.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__recalc_after_undo_push); CPointer<Integer> p_recalc_after_undo_push = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'recalc_after_undo_push'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__session_uuid
public static final long[] __DNA__FIELD__session_uuid
Field descriptor (offset) for struct member 'session_uuid'.Field Documentation
Blender Source Code
A session-wide unique identifier for a given
ID
, that remain the same across potential re-allocations (e.g. due to undo/redo steps).Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__session_uuid); CPointer<Integer> p_session_uuid = p.cast(new Class[]{Integer.class});
Metadata
- Field: 'session_uuid'
- Signature: 'int'
- Actual Size (32bit/64bit): 4/4
-
__DNA__FIELD__properties
public static final long[] __DNA__FIELD__properties
Field descriptor (offset) for struct member 'properties'.Field Documentation
Java .Blend
List of associated properties.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__properties); CPointer<CPointer<IDProperty>> p_properties = p.cast(new Class[]{CPointer.class, IDProperty.class});
Metadata
- Field: 'properties'
- Signature: 'IDProperty*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__override_library
public static final long[] __DNA__FIELD__override_library
Field descriptor (offset) for struct member 'override_library'.Field Documentation
Blender Python API
(read-only) Library override dataBlender Source Code
Reference linked
ID
which this one overrides.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__override_library); CPointer<CPointer<IDOverrideLibrary>> p_override_library = p.cast(new Class[]{CPointer.class, IDOverrideLibrary.class});
Metadata
- Field: 'override_library'
- Signature: 'IDOverrideLibrary*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__orig_id
public static final long[] __DNA__FIELD__orig_id
Field descriptor (offset) for struct member 'orig_id'.Field Documentation
Blender Source Code
Only set for data-blocks which are coming from copy-on-write, points to the original version of it. Also used temporarily during memfile undo to keep a reference to old
ID
when found.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__orig_id); CPointer<CPointer<ID>> p_orig_id = p.cast(new Class[]{CPointer.class, ID.class});
Metadata
- Field: 'orig_id'
- Signature: 'ID*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__py_instance
public static final long[] __DNA__FIELD__py_instance
Field descriptor (offset) for struct member 'py_instance'.Field Documentation
Blender Source Code
Holds the #PyObject reference to the
ID
(initialized on demand).This isn't essential, it could be removed however it gives some advantages:
Every time the
ID
is accessed a #BPy_StructRNA doesn't have to be created & destroyed (consider all the polling and drawing functions that accessID
's).When this
ID
is deleted, the #BPy_StructRNA can be invalidated so accessing it from Python raises an exception instead of crashing.This is of limited benefit though, as it doesn't apply to non
ID
data that references thisID
(the bones of an armature or the modifiers of an object for e.g.).
Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__py_instance); CPointer<CPointer<Object>> p_py_instance = p.cast(new Class[]{CPointer.class, Object.class});
Metadata
- Field: 'py_instance'
- Signature: 'void*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__library_weak_reference
public static final long[] __DNA__FIELD__library_weak_reference
Field descriptor (offset) for struct member 'library_weak_reference'.Field Documentation
Blender Python API
(read-only) Weak reference to a data-block in another library .blend file (used to re-use already appended data instead of appending new copies)Blender Source Code
Weak reference to an
ID
in a given library file, used to allow re-using already appended data in some cases, instead of appending it again.May be NULL.
Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__library_weak_reference); CPointer<CPointer<LibraryWeakReference>> p_library_weak_reference = p.cast(new Class[]{CPointer.class, LibraryWeakReference.class});
Metadata
- Field: 'library_weak_reference'
- Signature: 'LibraryWeakReference*'
- Actual Size (32bit/64bit): 4/8
-
__DNA__FIELD__runtime
public static final long[] __DNA__FIELD__runtime
Field descriptor (offset) for struct member 'runtime'.Pointer Arithmetics
This is how you get a reference on the corresponding field in the struct:
ID id = ...; CPointer<Object> p = id.__dna__addressof(ID.__DNA__FIELD__runtime); CPointer<ID_Runtime> p_runtime = p.cast(new Class[]{ID_Runtime.class});
Metadata
- Field: 'runtime'
- Signature: 'ID_Runtime'
- Actual Size (32bit/64bit): 16/16
-
-
Constructor Detail
-
ID
public ID(long __address, Block __block, BlockTable __blockTable)
-
ID
protected ID(ID that)
-
-
Method Detail
-
getNext
public CPointer<java.lang.Object> 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<java.lang.Object> 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<java.lang.Object> 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<java.lang.Object> 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
-
getNewid
public CPointer<ID> getNewid() throws java.io.IOException
Get method for struct member 'newid'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__newid
-
setNewid
public void setNewid(CPointer<ID> newid) throws java.io.IOException
Set method for struct member 'newid'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__newid
-
getLib
public CPointer<Library> getLib() throws java.io.IOException
Get method for struct member 'lib'.Field Documentation
Java .Blend
Reference on the library this library element belongs to.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__lib
-
setLib
public void setLib(CPointer<Library> lib) throws java.io.IOException
Set method for struct member 'lib'.Field Documentation
Java .Blend
Reference on the library this library element belongs to.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__lib
-
getAsset_data
public CPointer<AssetMetaData> getAsset_data() throws java.io.IOException
Get method for struct member 'asset_data'.Field Documentation
Blender Python API
(read-only) Additional data for an asset data-blockBlender Source Code
If the
ID
is an asset, this pointer is set. Owning pointer.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__asset_data
-
setAsset_data
public void setAsset_data(CPointer<AssetMetaData> asset_data) throws java.io.IOException
Set method for struct member 'asset_data'.Field Documentation
Blender Python API
(read-only) Additional data for an asset data-blockBlender Source Code
If the
ID
is an asset, this pointer is set. Owning pointer.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__asset_data
-
getName
public CArrayFacade<java.lang.Byte> getName() throws java.io.IOException
Get method for struct member 'name'.Field Documentation
Java .Blend
The name of the element. Names follow a certain convention.Names of library elements which have an specific block code, such as Mesh (ME) and Tex (ME), always have the first two ASCII characters of the block code as its prefix. Data of blocks with unspecified block code (i.e.
A few examples of names:BlockCodes.ID_DATA
) have other names.Element type Name prefix BlenderObject
"OB" Mesh
"ME" Material
"MA" Tex
"TE" CustomDataLayer
forMPoly
"NGon Face" CustomDataLayer
forMLoop
"NGon Face-Vertex" Blender Python API
Unique data-block ID nameBlender Source Code
MAX_ID_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
The name of the element. Names follow a certain convention.Names of library elements which have an specific block code, such as Mesh (ME) and Tex (ME), always have the first two ASCII characters of the block code as its prefix. Data of blocks with unspecified block code (i.e.
A few examples of names:BlockCodes.ID_DATA
) have other names.Element type Name prefix BlenderObject
"OB" Mesh
"ME" Material
"MA" Tex
"TE" CustomDataLayer
forMPoly
"NGon Face" CustomDataLayer
forMLoop
"NGon Face-Vertex" Blender Python API
Unique data-block ID nameBlender Source Code
MAX_ID_NAME.
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__name
-
getFlag
public short getFlag() throws java.io.IOException
Get method for struct member 'flag'.Field Documentation
Java .Blend
In files usually 1024. One of:LIB_LOCAL 0 LIB_EXTERN 1 LIB_INDIRECT 2 LIB_NEED_EXPAND 8 LIB_TESTEXT (LIB_NEED_EXPAND | LIB_EXTERN) LIB_TESTIND (LIB_NEED_EXPAND | LIB_INDIRECT) LIB_READ 16 LIB_NEED_LINK 32 LIB_NEW 256 LIB_FAKEUSER 512 LIB_DOIT 1024 free test flag LIB_PRE_EXISTING 2048 tag existing data before linking so we know what is new LIB_ID_RECALC 4096 runtime LIB_ID_RECALC_DATA 8192 runtime Blender Source Code
LIB_... flags report on status of the data-block this
ID
belongs to (persistent, saved to and read from .blend).- 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'.Field Documentation
Java .Blend
In files usually 1024. One of:LIB_LOCAL 0 LIB_EXTERN 1 LIB_INDIRECT 2 LIB_NEED_EXPAND 8 LIB_TESTEXT (LIB_NEED_EXPAND | LIB_EXTERN) LIB_TESTIND (LIB_NEED_EXPAND | LIB_INDIRECT) LIB_READ 16 LIB_NEED_LINK 32 LIB_NEW 256 LIB_FAKEUSER 512 LIB_DOIT 1024 free test flag LIB_PRE_EXISTING 2048 tag existing data before linking so we know what is new LIB_ID_RECALC 4096 runtime LIB_ID_RECALC_DATA 8192 runtime Blender Source Code
LIB_... flags report on status of the data-block this
ID
belongs to (persistent, saved to and read from .blend).- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__flag
-
getTag
public int getTag() throws java.io.IOException
Get method for struct member 'tag'.Field Documentation
Blender Python API
Tools can use this to tag data for their own purposes (initial state is undefined)Blender Source Code
LIB_TAG_... tags (runtime only, cleared at read time).
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__tag
-
setTag
public void setTag(int tag) throws java.io.IOException
Set method for struct member 'tag'.Field Documentation
Blender Python API
Tools can use this to tag data for their own purposes (initial state is undefined)Blender Source Code
LIB_TAG_... tags (runtime only, cleared at read time).
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__tag
-
getUs
public int getUs() throws java.io.IOException
Get method for struct member 'us'.Field Documentation
Java .Blend
Reference counter, counts number of references on the corresponding element. If 0, the element will not be stored in a file.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__us
-
setUs
public void setUs(int us) throws java.io.IOException
Set method for struct member 'us'.Field Documentation
Java .Blend
Reference counter, counts number of references on the corresponding element. If 0, the element will not be stored in a file.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__us
-
getIcon_id
public int getIcon_id() throws java.io.IOException
Get method for struct member 'icon_id'.Field Documentation
Java .Blend
Always 0 in files. Will be recalculated base on the library element type when loaded.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__icon_id
-
setIcon_id
public void setIcon_id(int icon_id) throws java.io.IOException
Set method for struct member 'icon_id'.Field Documentation
Java .Blend
Always 0 in files. Will be recalculated base on the library element type when loaded.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__icon_id
-
getRecalc
public int getRecalc() throws java.io.IOException
Get method for struct member 'recalc'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__recalc
-
setRecalc
public void setRecalc(int recalc) throws java.io.IOException
Set method for struct member 'recalc'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__recalc
-
getRecalc_up_to_undo_push
public int getRecalc_up_to_undo_push() throws java.io.IOException
Get method for struct member 'recalc_up_to_undo_push'.Field Documentation
Blender Source Code
Used by undo code. recalc_after_undo_push contains the changes between the last undo push and the current state. This is accumulated as IDs are tagged for update in the depsgraph, and only cleared on undo push.
recalc_up_to_undo_push is saved to undo memory, and is the value of recalc_after_undo_push at the time of the undo push. This means it can be used to find the changes between undo states.
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__recalc_up_to_undo_push
-
setRecalc_up_to_undo_push
public void setRecalc_up_to_undo_push(int recalc_up_to_undo_push) throws java.io.IOException
Set method for struct member 'recalc_up_to_undo_push'.Field Documentation
Blender Source Code
Used by undo code. recalc_after_undo_push contains the changes between the last undo push and the current state. This is accumulated as IDs are tagged for update in the depsgraph, and only cleared on undo push.
recalc_up_to_undo_push is saved to undo memory, and is the value of recalc_after_undo_push at the time of the undo push. This means it can be used to find the changes between undo states.
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__recalc_up_to_undo_push
-
getRecalc_after_undo_push
public int getRecalc_after_undo_push() throws java.io.IOException
Get method for struct member 'recalc_after_undo_push'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__recalc_after_undo_push
-
setRecalc_after_undo_push
public void setRecalc_after_undo_push(int recalc_after_undo_push) throws java.io.IOException
Set method for struct member 'recalc_after_undo_push'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__recalc_after_undo_push
-
getSession_uuid
public int getSession_uuid() throws java.io.IOException
Get method for struct member 'session_uuid'.Field Documentation
Blender Source Code
A session-wide unique identifier for a given
ID
, that remain the same across potential re-allocations (e.g. due to undo/redo steps).- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__session_uuid
-
setSession_uuid
public void setSession_uuid(int session_uuid) throws java.io.IOException
Set method for struct member 'session_uuid'.Field Documentation
Blender Source Code
A session-wide unique identifier for a given
ID
, that remain the same across potential re-allocations (e.g. due to undo/redo steps).- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__session_uuid
-
getProperties
public CPointer<IDProperty> getProperties() throws java.io.IOException
Get method for struct member 'properties'.Field Documentation
Java .Blend
List of associated properties.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__properties
-
setProperties
public void setProperties(CPointer<IDProperty> properties) throws java.io.IOException
Set method for struct member 'properties'.Field Documentation
Java .Blend
List of associated properties.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__properties
-
getOverride_library
public CPointer<IDOverrideLibrary> getOverride_library() throws java.io.IOException
Get method for struct member 'override_library'.Field Documentation
Blender Python API
(read-only) Library override dataBlender Source Code
Reference linked
ID
which this one overrides.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__override_library
-
setOverride_library
public void setOverride_library(CPointer<IDOverrideLibrary> override_library) throws java.io.IOException
Set method for struct member 'override_library'.Field Documentation
Blender Python API
(read-only) Library override dataBlender Source Code
Reference linked
ID
which this one overrides.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__override_library
-
getOrig_id
public CPointer<ID> getOrig_id() throws java.io.IOException
Get method for struct member 'orig_id'.Field Documentation
Blender Source Code
Only set for data-blocks which are coming from copy-on-write, points to the original version of it. Also used temporarily during memfile undo to keep a reference to old
ID
when found.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__orig_id
-
setOrig_id
public void setOrig_id(CPointer<ID> orig_id) throws java.io.IOException
Set method for struct member 'orig_id'.Field Documentation
Blender Source Code
Only set for data-blocks which are coming from copy-on-write, points to the original version of it. Also used temporarily during memfile undo to keep a reference to old
ID
when found.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__orig_id
-
getPy_instance
public CPointer<java.lang.Object> getPy_instance() throws java.io.IOException
Get method for struct member 'py_instance'.Field Documentation
Blender Source Code
Holds the #PyObject reference to the
ID
(initialized on demand).This isn't essential, it could be removed however it gives some advantages:
Every time the
ID
is accessed a #BPy_StructRNA doesn't have to be created & destroyed (consider all the polling and drawing functions that accessID
's).When this
ID
is deleted, the #BPy_StructRNA can be invalidated so accessing it from Python raises an exception instead of crashing.This is of limited benefit though, as it doesn't apply to non
ID
data that references thisID
(the bones of an armature or the modifiers of an object for e.g.).
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__py_instance
-
setPy_instance
public void setPy_instance(CPointer<java.lang.Object> py_instance) throws java.io.IOException
Set method for struct member 'py_instance'.Field Documentation
Blender Source Code
Holds the #PyObject reference to the
ID
(initialized on demand).This isn't essential, it could be removed however it gives some advantages:
Every time the
ID
is accessed a #BPy_StructRNA doesn't have to be created & destroyed (consider all the polling and drawing functions that accessID
's).When this
ID
is deleted, the #BPy_StructRNA can be invalidated so accessing it from Python raises an exception instead of crashing.This is of limited benefit though, as it doesn't apply to non
ID
data that references thisID
(the bones of an armature or the modifiers of an object for e.g.).
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__py_instance
-
getLibrary_weak_reference
public CPointer<LibraryWeakReference> getLibrary_weak_reference() throws java.io.IOException
Get method for struct member 'library_weak_reference'.Field Documentation
Blender Python API
(read-only) Weak reference to a data-block in another library .blend file (used to re-use already appended data instead of appending new copies)Blender Source Code
Weak reference to an
ID
in a given library file, used to allow re-using already appended data in some cases, instead of appending it again.May be NULL.
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__library_weak_reference
-
setLibrary_weak_reference
public void setLibrary_weak_reference(CPointer<LibraryWeakReference> library_weak_reference) throws java.io.IOException
Set method for struct member 'library_weak_reference'.Field Documentation
Blender Python API
(read-only) Weak reference to a data-block in another library .blend file (used to re-use already appended data instead of appending new copies)Blender Source Code
Weak reference to an
ID
in a given library file, used to allow re-using already appended data in some cases, instead of appending it again.May be NULL.
- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__library_weak_reference
-
getRuntime
public ID_Runtime getRuntime() throws java.io.IOException
Get method for struct member 'runtime'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__runtime
-
setRuntime
public void setRuntime(ID_Runtime runtime) throws java.io.IOException
Set method for struct member 'runtime'.- Throws:
java.io.IOException
- See Also:
__DNA__FIELD__runtime
-
-