blob: 2c9d65d3af729819957af73a424ff865065ae717 [file] [log] [blame]
Chris Lattner30fdc8d2010-06-08 16:52:24 +00001//===-- CFData.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// Created by Greg Clayton on 1/16/08.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef __CFData_h__
15#define __CFData_h__
16
17#include "CFUtils.h"
18
19class CFData : public CFReleaser<CFDataRef>
20{
21public:
22 //------------------------------------------------------------------
23 // Constructors and Destructors
24 //------------------------------------------------------------------
25 CFData(CFDataRef data = NULL);
26 CFData(const CFData& rhs);
27 CFData& operator=(const CFData& rhs);
28 virtual ~CFData();
29
30 CFDataRef Serialize(CFPropertyListRef plist, CFPropertyListFormat format);
31 const uint8_t* GetBytePtr () const;
32 CFIndex GetLength () const;
33protected:
34 //------------------------------------------------------------------
35 // Classes that inherit from CFData can see and modify these
36 //------------------------------------------------------------------
37};
38
39#endif // #ifndef __CFData_h__