Object.cpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #include "Base.h"
  2. #include "Object.h"
  3. namespace gameplay
  4. {
  5. Object::Object(void) : _fposition(0)
  6. {
  7. }
  8. Object::~Object(void)
  9. {
  10. }
  11. unsigned int Object::getTypeId(void) const
  12. {
  13. return 0;
  14. }
  15. void Object::writeBinary(FILE* file)
  16. {
  17. saveFilePosition(file);
  18. }
  19. const std::string& Object::getId() const
  20. {
  21. return _id;
  22. }
  23. void Object::setId(const char* idStr)
  24. {
  25. if (idStr)
  26. {
  27. _id = idStr;
  28. }
  29. }
  30. void Object::setId(const std::string& newId)
  31. {
  32. if (newId.length() > 0)
  33. {
  34. _id = newId;
  35. }
  36. }
  37. void Object::fprintElementStart(FILE* file)
  38. {
  39. if (_id.length() > 0)
  40. {
  41. fprintf(file, "<%s id=\"%s\">\n", getElementName(), _id.c_str());
  42. }
  43. else
  44. {
  45. fprintf(file, "<%s>\n", getElementName());
  46. }
  47. }
  48. void Object::fprintElementEnd(FILE* file)
  49. {
  50. fprintf(file, "</%s>\n", getElementName());
  51. }
  52. unsigned int Object::getFilePosition()
  53. {
  54. return (unsigned int)_fposition;
  55. }
  56. void Object::saveFilePosition(FILE* file)
  57. {
  58. _fposition = ftell(file);
  59. }
  60. void Object::writeBinaryXref(FILE* file)
  61. {
  62. std::string xref("#");
  63. xref.append(getId());
  64. write(xref, file);
  65. }
  66. }