MeshLib Java Docs
Loading...
Searching...
No Matches
meshlib.std_shared_ptr_const_void Class Reference
Inheritance diagram for meshlib.std_shared_ptr_const_void:

Public Member Functions

 std_shared_ptr_const_void (java.lang.foreign.MemorySegment ptr, boolean owned, java.lang.Object owner)
 std_shared_ptr_const_void ()
 std_shared_ptr_const_void (meshlib.std_shared_ptr_const_void other)
void assignFromAnother (meshlib.std_shared_ptr_const_void other)
java.lang.foreign.MemorySegment get ()
boolean has_value ()
int use_count ()
void reset ()
 std_shared_ptr_const_void (java.lang.foreign.MemorySegment ptr)
void assignNonOwning (java.lang.foreign.MemorySegment ptr)
 std_shared_ptr_const_void (meshlib.std_shared_ptr_void ptr)
void assignFromMutable (meshlib.std_shared_ptr_void ptr)
 std_shared_ptr_const_void (meshlib.std_shared_ptr_const_void ownership, java.lang.foreign.MemorySegment ptr)
void AssignAliasing (meshlib.std_shared_ptr_const_void ownership, java.lang.foreign.MemorySegment ptr)
Public Member Functions inherited from meshlib.CppObject
final java.lang.foreign.MemorySegment rawPointer ()
final boolean isOwned ()
final void close ()
final java.lang.foreign.MemorySegment release ()

Additional Inherited Members

Protected Member Functions inherited from meshlib.CppObject
 CppObject (java.lang.foreign.MemorySegment ptr, java.util.function.Consumer< java.lang.foreign.MemorySegment > destroy, java.lang.Object owner)

Detailed Description

Wraps a pointer to a single shared reference-counted heap-allocated const void.

Instances created here own their C++ objects, see CppObject.

Constructor & Destructor Documentation

◆ std_shared_ptr_const_void() [1/6]

meshlib.std_shared_ptr_const_void.std_shared_ptr_const_void ( java.lang.foreign.MemorySegment ptr,
boolean owned,
java.lang.Object owner )

Wraps a pointer from the C bindings. If owned, the object is destroyed when the wrapper dies. owner is kept alive as long as this wrapper is. Not for normal use.

◆ std_shared_ptr_const_void() [2/6]

meshlib.std_shared_ptr_const_void.std_shared_ptr_const_void ( )

Constructs an empty (default-constructed) instance.

Calls MR_std_shared_ptr_const_void_DefaultConstruct().

◆ std_shared_ptr_const_void() [3/6]

meshlib.std_shared_ptr_const_void.std_shared_ptr_const_void ( meshlib.std_shared_ptr_const_void other)

Constructs a copy of another instance. The source remains alive. The reference to the parameter other might be preserved in the constructed object.

Calls MR_std_shared_ptr_const_void_ConstructFromAnother().

◆ std_shared_ptr_const_void() [4/6]

meshlib.std_shared_ptr_const_void.std_shared_ptr_const_void ( java.lang.foreign.MemorySegment ptr)

Create a new instance, storing a non-owning pointer. The reference to the parameter ptr might be preserved in the constructed object.

Calls MR_std_shared_ptr_const_void_ConstructNonOwning(). Some types are raw C types, see the C bindings for the details.

◆ std_shared_ptr_const_void() [5/6]

meshlib.std_shared_ptr_const_void.std_shared_ptr_const_void ( meshlib.std_shared_ptr_void ptr)

Create a new instance from a non-const pointer to the same type.

Calls MR_std_shared_ptr_const_void_ConstructFromMutable().

◆ std_shared_ptr_const_void() [6/6]

meshlib.std_shared_ptr_const_void.std_shared_ptr_const_void ( meshlib.std_shared_ptr_const_void ownership,
java.lang.foreign.MemorySegment ptr )

The aliasing constructor. Create a new instance, copying ownership from an existing shared pointer and storing an arbitrary raw pointer. The input pointer can be reinterpreted from any other std::shared_ptr<T> to avoid constructing a new std::shared_ptr<void>. The reference to the parameter ptr might be preserved in the constructed object.

Calls MR_std_shared_ptr_const_void_ConstructAliasing(). Some types are raw C types, see the C bindings for the details.

Member Function Documentation

◆ AssignAliasing()

void meshlib.std_shared_ptr_const_void.AssignAliasing ( meshlib.std_shared_ptr_const_void ownership,
java.lang.foreign.MemorySegment ptr )

The aliasing assignment. Overwrite an existing instance, copying ownership from an existing shared pointer and storing an arbitrary raw pointer. The input pointer can be reinterpreted from any other std::shared_ptr<T> to avoid constructing a new std::shared_ptr<void>. The reference to the parameter ptr might be preserved in this object.

Calls MR_std_shared_ptr_const_void_AssignAliasing(). Some types are raw C types, see the C bindings for the details.

◆ assignFromAnother()

void meshlib.std_shared_ptr_const_void.assignFromAnother ( meshlib.std_shared_ptr_const_void other)

Assigns the contents from another instance. Both objects remain alive after the call. The reference to the parameter other might be preserved in this object.

Calls MR_std_shared_ptr_const_void_AssignFromAnother().

◆ assignFromMutable()

void meshlib.std_shared_ptr_const_void.assignFromMutable ( meshlib.std_shared_ptr_void ptr)

Overwrite the existing instance with a non-const pointer to the same type.

Calls MR_std_shared_ptr_const_void_AssignFromMutable().

◆ assignNonOwning()

void meshlib.std_shared_ptr_const_void.assignNonOwning ( java.lang.foreign.MemorySegment ptr)

Overwrite the existing instance with a non-owning pointer. The previously owned object, if any, has its reference count decremented. The reference to the parameter ptr might be preserved in this object.

Calls MR_std_shared_ptr_const_void_AssignNonOwning(). Some types are raw C types, see the C bindings for the details.

◆ get()

java.lang.foreign.MemorySegment meshlib.std_shared_ptr_const_void.get ( )

Returns the stored pointer, possibly null. The reference to this object might be preserved as the return value.

Calls MR_std_shared_ptr_const_void_get(). Some types are raw C types, see the C bindings for the details.

◆ has_value()

boolean meshlib.std_shared_ptr_const_void.has_value ( )

Returns true if non-null.

Calls MR_std_shared_ptr_const_void_has_value().

◆ reset()

void meshlib.std_shared_ptr_const_void.reset ( )

Resets the pointer to null.

Calls MR_std_shared_ptr_const_void_reset().

◆ use_count()

int meshlib.std_shared_ptr_const_void.use_count ( )

How many shared pointers share the managed object. Zero if no object is being managed. This being zero usually conincides with MR_std_shared_ptr_const_void_get() returning null, but is ultimately orthogonal. Note that in multithreaded environments, the only safe way to use this number is comparing it with zero. Positive values might change by the time you get to use them.

Calls MR_std_shared_ptr_const_void_use_count().


The documentation for this class was generated from the following file: