Class Ifc4::IfcRecurrencePattern¶
Defined in File Ifc4.h
Nested Relationships¶
This class is a nested type of Struct Ifc4.
Inheritance Relationships¶
Base Type¶
public IfcUtil::IfcBaseEntity
(Class IfcBaseEntity)
Class Documentation¶
-
class
Ifc4
::
IfcRecurrencePattern
: public IfcUtil::IfcBaseEntity¶ IfcRecurrencePattern defines repetitive time periods on the basis of regular recurrences such as each Monday in a week, or every third Tuesday in a month. The population of the remaining attributes such as DayComponent, Position, and Interval depend on the specified recurrence type.
HISTORY: New entity in IFC2x4.
Use definitions IfcRecurrencePattern supports various recurrence patterns that are differentiated by a type definition (IfcRecurrencePattern.RecurrenceType), which is required to provide the meaning of the given values. It can be further constrained by applicable times through specified IfcTimePeriod instances, thus enabling time periods such as between 7:00 and 12:00 and between 13:00 and 17:00 for each of the applicable days, weeks or months.
Public Types
-
typedef IfcTemplatedEntityList<IfcRecurrencePattern>
list
¶
Public Functions
-
::Ifc4::IfcRecurrenceTypeEnum::Value
RecurrenceType
() const¶ Defines the recurrence type that gives meaning to the used attributes and decides about possible attribute combinations, i.e. what attributes are needed to fully describe the pattern type.
-
void
setRecurrenceType
(::Ifc4::IfcRecurrenceTypeEnum::Value v)¶
-
bool
hasDayComponent
() const¶ Whether the optional attribute DayComponent is defined for this IfcRecurrencePattern.
-
std::vector<int>
DayComponent
() const¶ The position of the specified day in a month.
-
void
setDayComponent
(std::vector<int> v)¶
-
bool
hasWeekdayComponent
() const¶ Whether the optional attribute WeekdayComponent is defined for this IfcRecurrencePattern.
-
std::vector<int>
WeekdayComponent
() const¶ The weekday name of the specified day in a week.
-
void
setWeekdayComponent
(std::vector<int> v)¶
-
bool
hasMonthComponent
() const¶ Whether the optional attribute MonthComponent is defined for this IfcRecurrencePattern.
-
std::vector<int>
MonthComponent
() const¶ The position of the specified month in a year.
-
void
setMonthComponent
(std::vector<int> v)¶
-
bool
hasPosition
() const¶ Whether the optional attribute Position is defined for this IfcRecurrencePattern.
-
int
Position
() const¶ The position of the specified component, e.g. the 3rd (position=3) Tuesday (weekday component) in a month. A negative position value is used to define the last position of the component (-1), the next to last position (-2) etc.
-
void
setPosition
(int v)¶
-
bool
hasInterval
() const¶ Whether the optional attribute Interval is defined for this IfcRecurrencePattern.
-
int
Interval
() const¶ An interval can be given according to the pattern type. An interval value of 2 can for instance every two days, weeks, months, years. An empty interval value is regarded as 1. The used interval values should be in a reasonable range, e.g. not 0 or <0.
-
void
setInterval
(int v)¶
-
bool
hasOccurrences
() const¶ Whether the optional attribute Occurrences is defined for this IfcRecurrencePattern.
-
int
Occurrences
() const¶ Defines the number of occurrences of this pattern, e.g. a weekly event might be defined to occur 5 times before it stops.
-
void
setOccurrences
(int v)¶
-
bool
hasTimePeriods
() const¶ Whether the optional attribute TimePeriods is defined for this IfcRecurrencePattern.
-
IfcTemplatedEntityList<::Ifc4::IfcTimePeriod>::ptr
TimePeriods
() const¶ List of time periods that are defined by a start and end time of the recurring element (day). The order of the list should reflect the sequence of the time periods.
-
void
setTimePeriods
(IfcTemplatedEntityList<::Ifc4::IfcTimePeriod>::ptr v)¶
-
IfcRecurrencePattern
(IfcEntityInstanceData *e)¶
-
IfcRecurrencePattern
(::Ifc4::IfcRecurrenceTypeEnum::Value v1_RecurrenceType, boost::optional<std::vector<int>> v2_DayComponent, boost::optional<std::vector<int>> v3_WeekdayComponent, boost::optional<std::vector<int>> v4_MonthComponent, boost::optional<int> v5_Position, boost::optional<int> v6_Interval, boost::optional<int> v7_Occurrences, boost::optional<IfcTemplatedEntityList<::Ifc4::IfcTimePeriod>::ptr> v8_TimePeriods)¶
-
typedef IfcTemplatedEntityList<IfcRecurrencePattern>