StringField.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. ---------------------------------------------------------------------------
  3. Nullsoft Database Engine
  4. --------------------
  5. codename: Near Death Experience
  6. ---------------------------------------------------------------------------
  7. */
  8. /*
  9. ---------------------------------------------------------------------------
  10. StringField Class Prototypes
  11. Android (linux) implementation
  12. ---------------------------------------------------------------------------
  13. */
  14. #ifndef __STRINGFIELD_H
  15. #define __STRINGFIELD_H
  16. #include "../NDEString.h"
  17. class StringField : public Field
  18. {
  19. public:
  20. StringField();
  21. ~StringField();
  22. StringField(const char *Str, int strkind=STRING_IS_WCHAR);
  23. char *GetString(void);
  24. void SetString(const char *Str);
  25. void SetNDEString(char *Str);
  26. protected:
  27. virtual void ReadTypedData(const uint8_t *, size_t len);
  28. virtual void WriteTypedData(uint8_t *, size_t len);
  29. virtual size_t GetDataSize(void);
  30. virtual int Compare(Field *Entry);
  31. virtual int Starts(Field *Entry);
  32. virtual int Contains(Field *Entry);
  33. virtual bool ApplyFilter(Field *Data, int op);
  34. virtual Field *Clone(Table *pTable);
  35. void InitField(void);
  36. char *String;
  37. };
  38. #endif