summaryrefslogtreecommitdiff
path: root/lib/src/turns-participant.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/src/turns-participant.cpp')
-rw-r--r--lib/src/turns-participant.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/src/turns-participant.cpp b/lib/src/turns-participant.cpp
index 8f929f0..97a7ed0 100644
--- a/lib/src/turns-participant.cpp
+++ b/lib/src/turns-participant.cpp
@@ -16,6 +16,7 @@ struct _TurnsParticipant
gboolean active;
gboolean defeated;
TurnsParticipantDisposition disposition;
+ gchar * id;
gchar * name;
gfloat priority;
};
@@ -42,6 +43,7 @@ namespace
{
auto participant = TURNS_PARTICIPANT(self);
+ g_free(participant->id);
g_free(participant->name);
G_OBJECT_CLASS(turns_participant_parent_class)->finalize(self);
@@ -145,7 +147,7 @@ static void turns_participant_class_init(TurnsParticipantClass * klass)
static void turns_participant_init(TurnsParticipant * self)
{
- (void)self;
+ self->id = g_uuid_string_random();
}
TurnsParticipant * turns_participant_new()
@@ -179,6 +181,12 @@ TurnsParticipantDisposition turns_participant_get_disposition(TurnsParticipant c
return self->disposition;
}
+gchar const * turns_participant_get_id(TurnsParticipant const * self)
+{
+ g_return_val_if_fail(TURNS_IS_PARTICIPANT(const_cast<TurnsParticipant *>(self)), nullptr);
+ return self->id;
+}
+
gchar const * turns_participant_get_name(TurnsParticipant const * self)
{
g_return_val_if_fail(TURNS_IS_PARTICIPANT(const_cast<TurnsParticipant *>(self)), nullptr);