1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 ******************************************************************************
5 * Copyright (C) 2014, International Business Machines
6 * Corporation and others.  All Rights Reserved.
7 ******************************************************************************
8 * sharedcalendar.h
9 */
10 
11 #ifndef __SHARED_CALENDAR_H__
12 #define __SHARED_CALENDAR_H__
13 
14 #include "unicode/utypes.h"
15 #include "sharedobject.h"
16 
17 U_NAMESPACE_BEGIN
18 
19 class Calendar;
20 
21 class U_I18N_API SharedCalendar : public SharedObject {
22 public:
SharedCalendar(Calendar * calToAdopt)23     SharedCalendar(Calendar *calToAdopt) : ptr(calToAdopt) { }
24     virtual ~SharedCalendar();
get()25     const Calendar *get() const { return ptr; }
26     const Calendar *operator->() const { return ptr; }
27     const Calendar &operator*() const { return *ptr; }
28 private:
29     Calendar *ptr;
30     SharedCalendar(const SharedCalendar &);
31     SharedCalendar &operator=(const SharedCalendar &);
32 };
33 
34 U_NAMESPACE_END
35 
36 #endif
37