# ReceiveConstructionInterface Class Reference
[ReplicaManager]

`#include <ReplicaManager.h>`

List of all members.

## Public Member Functions
virtual ReplicaReturnResult | ReceiveConstruction (RakNet::BitStream *inBitStream, RakNetTime timestamp, NetworkID networkID, NetworkIDObject *existingObject, SystemAddress senderId, ReplicaManager *caller)=0

## Detailed Description

An interface for a class that handles the construction callback from the network See ReplicaManager::SetReceiveConstructionCB

## Member Function Documentation

virtual ReplicaReturnResult ReceiveConstructionInterface::ReceiveConstruction | ( | RakNet::BitStream * | inBitStream,
|  | RakNetTime | timestamp,
|  | NetworkID | networkID,
|  | NetworkIDObject * | existingObject,
|  | SystemAddress | senderId,
|  | ReplicaManager * | caller |
| ) |  |  | `[pure virtual]`

Called when a network object needs to be created by the ReplicaManager class

Parameters:

  `[in]` | inBitStream | The bitstream that was written to in Replica::SendConstruction
  `[in]` | timestamp | If in Replica::SendConstruction you set sendTimestamp to true, this is the time the packet was sent. Otherwise it is 0.
  `[in]` | networkID | If the remote object had an NetworkID set by the time Replica::SendConstruction was called it is here.
  `[in]` | existingNetworkObject | If networkID is already in use, existingNetworkObject is the pointer to that object. If existingReplica is non-zero, you usually shouldn't create a new object, unless you are reusing networkIDs, such as having the client and server both on the same computer
  `[in]` | senderId | Which SystemAddress sent this packet.
  `[in]` | caller | Which instance of ReplicaManager is calling this interface

Returns:
  See ReplicaReturnResult

The documentation for this class was generated from the following file:

- C:/RakNet/Source/ReplicaManager.h