49 lines
1.3 KiB
ReStructuredText
49 lines
1.3 KiB
ReStructuredText
PR_GetUniqueIdentity
|
|
====================
|
|
|
|
Asks the runtime to allocate a unique identity for a layer identified by
|
|
the layer's name.
|
|
|
|
|
|
Syntax
|
|
------
|
|
|
|
.. code::
|
|
|
|
#include <prio.h>
|
|
|
|
PRDescIdentity PR_GetUniqueIdentity(const char *layer_name);
|
|
|
|
|
|
Parameter
|
|
~~~~~~~~~
|
|
|
|
The function has the following parameter:
|
|
|
|
``layer_name``
|
|
The string associated with the creation of a layer's identity.
|
|
|
|
|
|
Returns
|
|
~~~~~~~
|
|
|
|
The function returns one of the following values:
|
|
|
|
- If successful, the :ref:`PRDescIdentity` for the layer associated with
|
|
the string specified in the layer named ``layer_name``.
|
|
- If the function cannot allocate enough dynamic memory, it fails and
|
|
returns the value ``PR_INVALID_IO_LAYER`` with the error code
|
|
``PR_OUT_OF_MEMORY_ERROR``.
|
|
|
|
|
|
Description
|
|
-----------
|
|
|
|
A string may be associated with a layer when the layer is created.
|
|
:ref:`PR_GetUniqueIdentity` allocates a unique layer identity and
|
|
associates it with the string. The string can be subsequently passed to
|
|
:ref:`PR_CreateIOLayerStub` to create a new file descriptor of that layer.
|
|
|
|
Call :ref:`PR_GetUniqueIdentity` only once for any particular layer name.
|
|
If you're creating a custom I/O layer, cache the result, and then use
|
|
that cached result every time you call :ref:`PR_CreateIOLayerStub`.
|