File: pr_getuniqueidentity.rst

package info (click to toggle)
firefox 147.0.3-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,683,320 kB
  • sloc: cpp: 7,607,359; javascript: 6,533,295; ansic: 3,775,223; python: 1,415,500; xml: 634,561; asm: 438,949; java: 186,241; sh: 62,752; makefile: 18,079; objc: 13,092; perl: 12,808; yacc: 4,583; cs: 3,846; pascal: 3,448; lex: 1,720; ruby: 1,003; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10; exp: 6
file content (49 lines) | stat: -rw-r--r-- 1,285 bytes parent folder | download | duplicates (16)
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`.