Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.2 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. // $NoKeywords: $
  6. //=============================================================================//
  7. #ifndef DT_LOCALTRANSFER_H
  8. #define DT_LOCALTRANSFER_H
  9. #ifdef _WIN32
  10. #pragma once
  11. #endif
  12. #include "dt_send.h"
  13. #include "dt_recv.h"
  14. class CBaseEdict;
  15. // This sets up the ability to copy an entity with the specified SendTable directly
  16. // into an entity with the specified RecvTable, thus avoiding compression overhead.
  17. void LocalTransfer_InitFastCopy(
  18. const SendTable *pSendTable,
  19. const CStandardSendProxies *pSendProxies,
  20. RecvTable *pRecvTable,
  21. const CStandardRecvProxies *pRecvProxies,
  22. int &nSlowCopyProps, // These are incremented to tell you how many fast copy props it found.
  23. int &nFastCopyProps
  24. );
  25. // Transfer the data from pSrcEnt to pDestEnt using the specified SendTable and RecvTable.
  26. void LocalTransfer_TransferEntity(
  27. const CBaseEdict *pEdict,
  28. const SendTable *pSendTable,
  29. const void *pSrcEnt,
  30. RecvTable *pRecvTable,
  31. void *pDestEnt,
  32. bool bNewlyCreated,
  33. bool bJustEnteredPVS,
  34. int objectID );
  35. // Call this after packing all the entities in a frame.
  36. void PrintPartialChangeEntsList();
  37. #endif // DT_LOCALTRANSFER_H