Skip to content

Commit 75758d0

Browse files
authored
#421: make lbsVTDataWriter at parity with the lbsVTDataReader for user-defined data (#452)
* #421: add user_defined data to jsonwriter * #421: return to original config
1 parent 9c5929e commit 75758d0

File tree

2 files changed

+23
-11
lines changed

2 files changed

+23
-11
lines changed

src/lbaf/IO/lbsVTDataWriter.py

+19-11
Original file line numberDiff line numberDiff line change
@@ -49,17 +49,25 @@ def __init__(
4949

5050
def __create_tasks(self, rank_id, objects, migratable):
5151
"""Create per-object entries to be outputted to JSON."""
52-
return [{
53-
"entity": {
54-
"home": rank_id,
55-
"id": o.get_id(),
56-
"migratable": migratable,
57-
"type": "object",
58-
},
59-
"node": rank_id,
60-
"resource": "cpu",
61-
"time": o.get_load()}
62-
for o in objects]
52+
tasks = []
53+
for o in objects:
54+
task_data = {
55+
"entity": {
56+
"home": rank_id,
57+
"id": o.get_id(),
58+
"migratable": migratable,
59+
"type": "object",
60+
},
61+
"node": rank_id,
62+
"resource": "cpu",
63+
"time": o.get_load()
64+
}
65+
user_defined = o.get_user_defined()
66+
if user_defined:
67+
task_data["user_defined"] = user_defined
68+
tasks.append(task_data)
69+
return tasks
70+
6371

6472
def _json_writer(self, rank_phases_double) -> str:
6573
"""Write one JSON per rank for list of phase instances."""

src/lbaf/Model/lbsObject.py

+4
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,10 @@ def get_overhead(self) -> float:
102102
"""Return additional runtime memory of object."""
103103
return self.__overhead
104104

105+
def get_user_defined(self) -> dict:
106+
"""Return optionally defined fields"""
107+
return self.__user_defined
108+
105109
def get_sent(self) -> dict:
106110
"""Return communications sent by object to other objects."""
107111
return self.__communicator.get_sent() if self.__communicator else {}

0 commit comments

Comments
 (0)