You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
623 B

  1. #pragma once
  2. #include <string>
  3. #include <memory>
  4. #include <ical/IcalObject.h>
  5. namespace ical {
  6. enum class action {
  7. DISPLAY, AUDIO, EMAIL, PROC
  8. };
  9. enum class trigger_type {
  10. ABSOLUTE, RELATIVE
  11. };
  12. class Alarm {
  13. public:
  14. Alarm(icalcomponent* alarm_component);
  15. void parse(icalcomponent* alarm_component);
  16. void parse_action(icalcomponent* alarm_component);
  17. void parse_description(icalcomponent* alarm_component);
  18. void parse_trigger(icalcomponent* alarm_component);
  19. std::string print() const;
  20. private:
  21. action a;
  22. trigger_type trigger;
  23. std::string description;
  24. };
  25. }