MeshLib C Docs
Loading...
Searching...
No Matches
std_shared_ptr_MR_ObjectLinesHolder.h File Reference
#include <MRCMisc/common.h>
#include <MRCMisc/exports.h>
#include <stdbool.h>
#include <stddef.h>

Go to the source code of this file.

Functions

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_DefaultConstruct (void)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_DefaultConstructArray (size_t num_elems)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_ConstructFromAnother (MR_PassBy other_pass_by, MR_std_shared_ptr_MR_ObjectLinesHolder *other)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignFromAnother (MR_std_shared_ptr_MR_ObjectLinesHolder *_this, MR_PassBy other_pass_by, MR_std_shared_ptr_MR_ObjectLinesHolder *other)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
 Destroys a heap-allocated instance of MR_std_shared_ptr_MR_ObjectLinesHolder. Does nothing if the pointer is null.
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_DestroyArray (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
 Destroys a heap-allocated array of MR_std_shared_ptr_MR_ObjectLinesHolder. Does nothing if the pointer is null.
MRC_API const MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_OffsetPtr (const MR_std_shared_ptr_MR_ObjectLinesHolder *ptr, ptrdiff_t i)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_OffsetMutablePtr (MR_std_shared_ptr_MR_ObjectLinesHolder *ptr, ptrdiff_t i)
MRC_API MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_get (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
MRC_API bool MR_std_shared_ptr_MR_ObjectLinesHolder_has_value (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
MRC_API int MR_std_shared_ptr_MR_ObjectLinesHolder_use_count (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_reset (MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_ConstructFromValue (MR_PassBy value_pass_by, MR_ObjectLinesHolder *value)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_Construct (MR_ObjectLinesHolder *ptr)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_Assign (MR_std_shared_ptr_MR_ObjectLinesHolder *_this, MR_ObjectLinesHolder *ptr)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_ConstructNonOwning (MR_ObjectLinesHolder *ptr)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignNonOwning (MR_std_shared_ptr_MR_ObjectLinesHolder *_this, MR_ObjectLinesHolder *ptr)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolderMR_std_shared_ptr_MR_ObjectLinesHolder_ConstructAliasing (MR_PassBy ownership_pass_by, MR_std_shared_ptr_const_void *ownership, MR_ObjectLinesHolder *ptr)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignAliasing (MR_std_shared_ptr_MR_ObjectLinesHolder *_this, MR_PassBy ownership_pass_by, MR_std_shared_ptr_const_void *ownership, MR_ObjectLinesHolder *ptr)
MRC_API MR_std_shared_ptr_voidMR_std_shared_ptr_MR_ObjectLinesHolder_ConvertTo_MR_std_shared_ptr_void (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this)
MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignTo_MR_std_shared_ptr_void (const MR_std_shared_ptr_MR_ObjectLinesHolder *_this, MR_std_shared_ptr_void *_target)

Function Documentation

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_Assign()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_Assign ( MR_std_shared_ptr_MR_ObjectLinesHolder * _this,
MR_ObjectLinesHolder * ptr )

Overwrite the existing instance, taking ownership of an existing pointer. The previously owned object, if any, has its reference count decremented. Parameter _this can not be null. It is a single object. Parameter ptr should point to a single object rather than to an array. Parameter ptr takes ownership of the passed pointer (if not null), and will later call MR_ObjectLinesHolder_Destroy() on it automatically.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_AssignAliasing()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignAliasing ( MR_std_shared_ptr_MR_ObjectLinesHolder * _this,
MR_PassBy ownership_pass_by,
MR_std_shared_ptr_const_void * ownership,
MR_ObjectLinesHolder * 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>. Parameter _this can not be null. It is a single object. The reference to the parameter ptr might be preserved in this object. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_AssignFromAnother()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignFromAnother ( MR_std_shared_ptr_MR_ObjectLinesHolder * _this,
MR_PassBy other_pass_by,
MR_std_shared_ptr_MR_ObjectLinesHolder * other )

Assigns the contents from another instance. Both objects remain alive after the call. Parameter _this can not be null. It is a single object. The reference to the parameter other might be preserved in this object. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_AssignNonOwning()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignNonOwning ( MR_std_shared_ptr_MR_ObjectLinesHolder * _this,
MR_ObjectLinesHolder * ptr )

Overwrite the existing instance with a non-owning pointer. The previously owned object, if any, has its reference count decremented. Parameter _this can not be null. It is a single object. The reference to the parameter ptr might be preserved in this object. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_AssignTo_MR_std_shared_ptr_void()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_AssignTo_MR_std_shared_ptr_void ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this,
MR_std_shared_ptr_void * _target )

Overwrites an existing std::shared_ptr<void> to point to the same object as this instance. Parameter _this can not be null. It is a single object. Parameter _target can not be null. It is a single object.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_Construct()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_Construct ( MR_ObjectLinesHolder * ptr)

Create a new instance, taking ownership of an existing pointer. Parameter ptr should point to a single object rather than to an array. Parameter ptr takes ownership of the passed pointer (if not null), and will later call MR_ObjectLinesHolder_Destroy() on it automatically. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy() to free it when you're done using it.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructAliasing()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructAliasing ( MR_PassBy ownership_pass_by,
MR_std_shared_ptr_const_void * ownership,
MR_ObjectLinesHolder * 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. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructFromAnother()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructFromAnother ( MR_PassBy other_pass_by,
MR_std_shared_ptr_MR_ObjectLinesHolder * other )

Constructs a copy of another instance. The source remains alive. The reference to the parameter other might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructFromValue()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructFromValue ( MR_PassBy value_pass_by,
MR_ObjectLinesHolder * value )

Construct from a value. The reference to the parameter value might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructNonOwning()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_ConstructNonOwning ( MR_ObjectLinesHolder * ptr)

Create a new instance, storing a non-owning pointer. The reference to the parameter ptr might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_ConvertTo_MR_std_shared_ptr_void()

MRC_API MR_std_shared_ptr_void * MR_std_shared_ptr_MR_ObjectLinesHolder_ConvertTo_MR_std_shared_ptr_void ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

Creates an untyped std::shared_ptr<void> pointing to the same object as the source typed pointer. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_void_Destroy() to free it when you're done using it.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_DefaultConstruct()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy() to free it when you're done using it.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_DefaultConstructArray()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_std_shared_ptr_MR_ObjectLinesHolder_DestroyArray(). Use MR_std_shared_ptr_MR_ObjectLinesHolder_OffsetMutablePtr() and MR_std_shared_ptr_MR_ObjectLinesHolder_OffsetPtr() to access the array elements.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_Destroy ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

Destroys a heap-allocated instance of MR_std_shared_ptr_MR_ObjectLinesHolder. Does nothing if the pointer is null.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_DestroyArray()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_DestroyArray ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

Destroys a heap-allocated array of MR_std_shared_ptr_MR_ObjectLinesHolder. Does nothing if the pointer is null.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_get()

MRC_API MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_get ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

Returns the stored pointer, possibly null. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_has_value()

MRC_API bool MR_std_shared_ptr_MR_ObjectLinesHolder_has_value ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

Returns true if non-null. Parameter _this can not be null. It is a single object.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_OffsetMutablePtr()

MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_OffsetMutablePtr ( MR_std_shared_ptr_MR_ObjectLinesHolder * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_OffsetPtr()

MRC_API const MR_std_shared_ptr_MR_ObjectLinesHolder * MR_std_shared_ptr_MR_ObjectLinesHolder_OffsetPtr ( const MR_std_shared_ptr_MR_ObjectLinesHolder * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_reset()

MRC_API void MR_std_shared_ptr_MR_ObjectLinesHolder_reset ( MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

Resets the pointer to null. Parameter _this can not be null. It is a single object.

◆ MR_std_shared_ptr_MR_ObjectLinesHolder_use_count()

MRC_API int MR_std_shared_ptr_MR_ObjectLinesHolder_use_count ( const MR_std_shared_ptr_MR_ObjectLinesHolder * _this)

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_MR_ObjectLinesHolder_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. Parameter _this can not be null. It is a single object.