blob: a0b49ac66f7b6883737c1f0c794c8159969a147c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
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`.
|