[#BloombergLP-bdlb-PcgRandomGenerator-2constructor-03]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlb.adoc[bdlb]::xref:BloombergLP/bdlb/PcgRandomGenerator.adoc[PcgRandomGenerator]::PcgRandomGenerator
:relfileprefix: ../../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;bdlb&lowbar;pcgrandomgenerator&period;h&gt;`

Create a `PcgRandomGenerator` object and seed it with the optionally specified `initState` and `streamSelector`&period; If `initState` and `streamSelector` are not specified, 0 is used for both&period; The highest&hyphen;order bit of `streamSelector` is ignored&period; Note that invoking different instances created with the identical `initState` and `streamSelector` will result in the same sequence of random numbers from subsequent invocations of `generate()`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlb/PcgRandomGenerator/2constructor-04.adoc[PcgRandomGenerator]();
----

[.small]#xref:BloombergLP/bdlb/PcgRandomGenerator/2constructor-04.adoc[_» more&period;&period;&period;_]#

Create a `PcgRandomGenerator` seeded with the specified `initState` and `streamSelector`&period; The highest&hyphen;order bit of `streamSelector` is ignored&period; Note that instances created with identical seeds produce the same sequence from subsequent `generate()` calls&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlb/PcgRandomGenerator/2constructor-0b.adoc[PcgRandomGenerator](
    uint64&lowbar;t initState,
    uint64&lowbar;t streamSelector);
----

[.small]#xref:BloombergLP/bdlb/PcgRandomGenerator/2constructor-0b.adoc[_» more&period;&period;&period;_]#


[.small]#Created with https://www.mrdocs.com[MrDocs]#
