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