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
19class CFBundle : public CFReleaser<CFBundleRef>
20{
21public:
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
39protected:
40        CFReleaser<CFURLRef> m_bundle_url;
41};
42
43#endif // #ifndef __CFBundle_h__
44