1 //===-- CFCData.h -----------------------------------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #ifndef CoreFoundationCPP_CFData_h_ 11 #define CoreFoundationCPP_CFData_h_ 12 13 #include "CFCReleaser.h" 14 15 class CFCData : public CFCReleaser<CFDataRef> { 16 public: 17 //------------------------------------------------------------------ 18 // Constructors and Destructors 19 //------------------------------------------------------------------ 20 CFCData(CFDataRef data = NULL); 21 CFCData(const CFCData &rhs); 22 CFCData &operator=(const CFCData &rhs); 23 virtual ~CFCData(); 24 25 CFDataRef Serialize(CFPropertyListRef plist, CFPropertyListFormat format); 26 const uint8_t *GetBytePtr() const; 27 CFIndex GetLength() const; 28 29 protected: 30 //------------------------------------------------------------------ 31 // Classes that inherit from CFCData can see and modify these 32 //------------------------------------------------------------------ 33 }; 34 35 #endif // #ifndef CoreFoundationCPP_CFData_h_ 36