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 public: 21 //------------------------------------------------------------------ 22 // Constructors and Destructors 23 //------------------------------------------------------------------ 24 CFBundle(const char *path = NULL); 25 CFBundle(const CFBundle &rhs); 26 CFBundle &operator=(const CFBundle &rhs); 27 virtual ~CFBundle(); 28 bool SetPath(const char *path); 29 30 CFStringRef GetIdentifier() const; 31 32 CFURLRef CopyExecutableURL() const; 33 34 protected: 35 CFReleaser<CFURLRef> m_bundle_url; 36 }; 37 38 #endif // #ifndef __CFBundle_h__ 39