NAP
portalitemoperationalcalendar.h
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2  * License, v. 2.0. If a copy of the MPL was not distributed with this
3  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4 
5 #pragma once
6 
7  // Local Includes
8 #include "portalitem.h"
9 
10 // External Includes
11 #include <apievent.h>
12 #include <operationalcalendar.h>
13 
14 namespace nap
15 {
20  {
21  RTTI_ENABLE(PortalItem)
22  public:
23 
30  virtual bool processUpdate(const APIEvent& event, utility::ErrorState& error) override;
31 
35  virtual APIEventPtr getDescriptor() const override;
36 
40  virtual APIEventPtr getValue() const override;
41 
42  std::string mName;
44 
45  private:
46 
50  const std::vector<std::string> getCalendarTimes() const;
51 
58  bool setCalendarTimes(const std::vector<std::string>& times, utility::ErrorState& error);
59  };
60 }
nap::PortalItemOperationalCalendar::mName
std::string mName
Property: 'Name' the name of the calendar in the portal.
Definition: portalitemoperationalcalendar.h:42
nap::PortalItemOperationalCalendar::mCalendar
ResourcePtr< OperationalCalendar > mCalendar
Property: 'Calendar' the calendar linked to this portal item.
Definition: portalitemoperationalcalendar.h:43
nap::rtti::ObjectPtr
Definition: objectptr.h:154
nap::utility::ErrorState
Definition: errorstate.h:19
nap::PortalItemOperationalCalendar
Definition: portalitemoperationalcalendar.h:19
nap::PortalItem
Definition: portalitem.h:19
nap::APIEventPtr
std::unique_ptr< nap::APIEvent > APIEventPtr
Definition: apievent.h:179
nap
Definition: templateapp.h:17
nap::APIEvent
Definition: apievent.h:37