Deserializer.pkg 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. $#include "IO/Deserializer.h"
  2. class Deserializer
  3. {
  4. // unsigned Read(void* dest, unsigned size);
  5. tolua_outside VectorBuffer DeserializerRead @ Read(unsigned size);
  6. unsigned Seek(unsigned position);
  7. unsigned SeekRelative(int delta);
  8. const String GetName() const;
  9. unsigned GetChecksum();
  10. unsigned GetPosition() const;
  11. unsigned Tell() const;
  12. unsigned GetSize() const;
  13. bool IsEof() const;
  14. int ReadInt();
  15. long long ReadInt64();
  16. short ReadShort();
  17. signed char ReadByte();
  18. unsigned ReadUInt();
  19. unsigned long long ReadUInt64();
  20. unsigned short ReadUShort();
  21. unsigned char ReadUByte();
  22. bool ReadBool();
  23. float ReadFloat();
  24. double ReadDouble();
  25. IntRect ReadIntRect();
  26. IntVector2 ReadIntVector2();
  27. IntVector3 ReadIntVector3();
  28. Rect ReadRect();
  29. Vector2 ReadVector2();
  30. Vector3 ReadVector3();
  31. Vector3 ReadPackedVector3(float maxAbsCoord);
  32. Vector4 ReadVector4();
  33. Quaternion ReadQuaternion();
  34. Quaternion ReadPackedQuaternion();
  35. Matrix3 ReadMatrix3();
  36. Matrix3x4 ReadMatrix3x4();
  37. Matrix4 ReadMatrix4();
  38. Color ReadColor();
  39. BoundingBox ReadBoundingBox();
  40. String ReadString();
  41. String ReadFileID();
  42. StringHash ReadStringHash();
  43. // PODVector<unsigned char> ReadBuffer();
  44. VectorBuffer ReadBuffer();
  45. ResourceRef ReadResourceRef();
  46. ResourceRefList ReadResourceRefList();
  47. Variant ReadVariant();
  48. Variant ReadVariant(VariantType type);
  49. VariantVector ReadVariantVector();
  50. VariantMap ReadVariantMap();
  51. unsigned ReadVLE();
  52. unsigned ReadNetID();
  53. String ReadLine();
  54. tolua_readonly tolua_property__get_set String name;
  55. tolua_readonly tolua_property__get_set unsigned checksum;
  56. tolua_readonly tolua_property__get_set unsigned position;
  57. tolua_readonly tolua_property__get_set unsigned size;
  58. tolua_readonly tolua_property__is_set bool eof;
  59. };
  60. ${
  61. static VectorBuffer DeserializerRead(Deserializer* deserializer, unsigned size)
  62. {
  63. unsigned char* data = new unsigned char[size];
  64. deserializer->Read(data, size);
  65. VectorBuffer buffer(data, size);
  66. delete [] data;
  67. return buffer;
  68. }
  69. $}