1
0

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. ---------------------------------------------------------------------------
  12. */
  13. #ifndef __STRINGFIELD_H
  14. #define __STRINGFIELD_H
  15. #include <CoreFoundation/CFString.h>
  16. class StringField : public Field
  17. {
  18. public:
  19. StringField();
  20. ~StringField();
  21. StringField(CFStringRef Str);
  22. CFStringRef GetString(); // CFRetain this if you need to keep it for a while
  23. void SetNDEString(CFStringRef str);
  24. protected:
  25. virtual void ReadTypedData(const uint8_t *, size_t len);
  26. virtual void WriteTypedData(uint8_t *, size_t len);
  27. virtual size_t GetDataSize(void);
  28. virtual int Compare(Field *Entry);
  29. virtual int Starts(Field *Entry);
  30. virtual int Contains(Field *Entry);
  31. virtual bool ApplyFilter(Field *Data, int op);
  32. virtual Field *Clone(Table *pTable);
  33. void InitField(void);
  34. CFStringRef String;
  35. };
  36. #endif