Home | History | Annotate | Download | only in i18n
      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:
     23     SharedCalendar(Calendar *calToAdopt) : ptr(calToAdopt) { }
     24     virtual ~SharedCalendar();
     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