1 //===-- CFBundle.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 __CFBundle_h__ 15 #define __CFBundle_h__ 16 17 #include "CFUtils.h" 18 19 class CFBundle : public CFReleaser<CFBundleRef> 20 { 21 public: 22 //------------------------------------------------------------------ 23 // Constructors and Destructors 24 //------------------------------------------------------------------ 25 CFBundle(const char *path = NULL); 26 CFBundle(const CFBundle& rhs); 27 CFBundle& operator=(const CFBundle& rhs); 28 virtual 29 ~CFBundle(); 30 bool 31 SetPath (const char *path); 32 33 CFStringRef 34 GetIdentifier () const; 35 36 CFURLRef 37 CopyExecutableURL () const; 38 39 protected: 40 CFReleaser<CFURLRef> m_bundle_url; 41 }; 42 43 #endif // #ifndef __CFBundle_h__ 44