|
Relationship Generator 1.2.2
Believable families around a person: parents, siblings, partners and children, with ages and names for C++23
|
What a family call asks for. More...
#include <relgen.hpp>
Public Attributes | |
| anchor_spec | anchor {} |
| The person the family is around; omitted fields are drawn. | |
| int | up {1} |
| Generations above the anchor: 0 for none, 1 for parents, 2 for grandparents too. | |
| int | down {1} |
| Generations below the anchor: 0 for none, 1 for children, 2 for grandchildren too. | |
| bool | siblings {true} |
Whether to include the anchor's siblings (and half-siblings). Siblings come from the parents, so up = 0 gives none. | |
| bool | partners {true} |
| Whether to include the anchor's partners, current and former. Children come from the unions either way. | |
| bool | names {true} |
| Whether to give everyone a name (needs name-generator's data). | |
| std::optional< culture > | name_culture {} |
The culture the names follow; the anchor's country's by default. Needs names; a culture with no names loaded leaves the family without names. | |
| bool | stepparents {false} |
Whether to include the partners of the anchor's parents who are not the other parent (stepfathers and stepmothers), who joined a parent while the anchor was a child. Off by default, and then nothing else about the family changes. Needs up >= 1. With siblings, it also brings the stepparents' children by an earlier union (stepsiblings), and the half-siblings born during the union have the stepparent as their other parent. | |
| bool | home {false} |
Whether to draw who the anchor lives with at the reference date (family::home). Off by default, and then nothing else about the family changes. It is drawn from the relatives the family holds, so a family without parents (up = 0) leaves a child with no one to live with. | |
| bool | weighted {true} |
| Population-weighted (true) or uniform country, when drawn. | |
| std::chrono::year_month_day | reference_date {birth_request::default_reference_date} |
| The date ages and who is alive are computed at (1 July 2023, the date of the UN estimates, by default). | |
What a family call asks for.
Every generation call takes one; family_request{} asks for the defaults. Choices are never stored on the generator, so one call cannot change the next.
Definition at line 135 of file relgen.hpp.
| anchor_spec dasmig::family_request::anchor {} |
The person the family is around; omitted fields are drawn.
Definition at line 138 of file relgen.hpp.
| int dasmig::family_request::down {1} |
Generations below the anchor: 0 for none, 1 for children, 2 for grandchildren too.
Definition at line 144 of file relgen.hpp.
| bool dasmig::family_request::home {false} |
Whether to draw who the anchor lives with at the reference date (family::home). Off by default, and then nothing else about the family changes. It is drawn from the relatives the family holds, so a family without parents (up = 0) leaves a child with no one to live with.
Definition at line 170 of file relgen.hpp.
| std::optional<culture> dasmig::family_request::name_culture {} |
The culture the names follow; the anchor's country's by default. Needs names; a culture with no names loaded leaves the family without names.
Definition at line 156 of file relgen.hpp.
| bool dasmig::family_request::names {true} |
Whether to give everyone a name (needs name-generator's data).
Definition at line 152 of file relgen.hpp.
| bool dasmig::family_request::partners {true} |
Whether to include the anchor's partners, current and former. Children come from the unions either way.
Definition at line 150 of file relgen.hpp.
| std::chrono::year_month_day dasmig::family_request::reference_date {birth_request::default_reference_date} |
The date ages and who is alive are computed at (1 July 2023, the date of the UN estimates, by default).
Definition at line 175 of file relgen.hpp.
| bool dasmig::family_request::siblings {true} |
Whether to include the anchor's siblings (and half-siblings). Siblings come from the parents, so up = 0 gives none.
Definition at line 147 of file relgen.hpp.
| bool dasmig::family_request::stepparents {false} |
Whether to include the partners of the anchor's parents who are not the other parent (stepfathers and stepmothers), who joined a parent while the anchor was a child. Off by default, and then nothing else about the family changes. Needs up >= 1. With siblings, it also brings the stepparents' children by an earlier union (stepsiblings), and the half-siblings born during the union have the stepparent as their other parent.
Definition at line 164 of file relgen.hpp.
| int dasmig::family_request::up {1} |
Generations above the anchor: 0 for none, 1 for parents, 2 for grandparents too.
Definition at line 141 of file relgen.hpp.
| bool dasmig::family_request::weighted {true} |
Population-weighted (true) or uniform country, when drawn.
Definition at line 172 of file relgen.hpp.