diff --git a/examples/auto_scheduling_with_custom_io_times.py b/examples/auto_scheduling_with_custom_io_times.py
index 381d982d1ed7c19e6fb3510d21a888a856f77f67..346083cda668b33c3fb1e0237adebe554615c436 100644
--- a/examples/auto_scheduling_with_custom_io_times.py
+++ b/examples/auto_scheduling_with_custom_io_times.py
@@ -24,10 +24,10 @@ sfg
 
 # %%
 # Set latencies and execution times.
-sfg.set_latency_of_type_name(Butterfly.type_name(), 1)
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 3)
-sfg.set_execution_time_of_type_name(Butterfly.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
+sfg.set_latency_of_type(Butterfly, 1)
+sfg.set_latency_of_type(ConstantMultiplication, 3)
+sfg.set_execution_time_of_type(Butterfly, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
 
 # %%
 # Generate an ASAP schedule for reference with custom IO times.
diff --git a/examples/fivepointwinograddft.py b/examples/fivepointwinograddft.py
index 33ba72bc169c577ced12a39b807bbb2718a35655..d778cac6d62f455bd65b28c98e72738e1d70167c 100644
--- a/examples/fivepointwinograddft.py
+++ b/examples/fivepointwinograddft.py
@@ -67,12 +67,12 @@ sfg
 
 # %%
 # Set latencies and execution times
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 2)
-sfg.set_latency_of_type_name(AddSub.type_name(), 1)
-sfg.set_latency_of_type_name(Butterfly.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
-sfg.set_execution_time_of_type_name(AddSub.type_name(), 1)
-sfg.set_execution_time_of_type_name(Butterfly.type_name(), 1)
+sfg.set_latency_of_type(ConstantMultiplication, 2)
+sfg.set_latency_of_type(AddSub, 1)
+sfg.set_latency_of_type(Butterfly, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
+sfg.set_execution_time_of_type(AddSub, 1)
+sfg.set_execution_time_of_type(Butterfly, 1)
 
 # %%
 # Generate schedule
diff --git a/examples/folding_example_with_architecture.py b/examples/folding_example_with_architecture.py
index 0777e45934e76fb9a7b7688593c85f6fb0b7cd97..9f0126f5ab6d17266de9e7bb1e173a890fced661 100644
--- a/examples/folding_example_with_architecture.py
+++ b/examples/folding_example_with_architecture.py
@@ -42,10 +42,10 @@ sfg
 
 # %%
 # Set latencies and execution times
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 2)
-sfg.set_latency_of_type_name(Addition.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
-sfg.set_execution_time_of_type_name(Addition.type_name(), 1)
+sfg.set_latency_of_type(ConstantMultiplication, 2)
+sfg.set_latency_of_type(Addition, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
+sfg.set_execution_time_of_type(Addition, 1)
 
 # %%
 # Create schedule
diff --git a/examples/ldlt_matrix_inverse.py b/examples/ldlt_matrix_inverse.py
index fba600e15e7451887b4fcbf269e6433a10324241..5bcacd0581f5f7e8a352457f7fb1b2237009f653 100644
--- a/examples/ldlt_matrix_inverse.py
+++ b/examples/ldlt_matrix_inverse.py
@@ -28,10 +28,10 @@ sfg
 
 # %%
 # Set latencies and execution times.
-sfg.set_latency_of_type_name(MADS.type_name(), 3)
-sfg.set_latency_of_type_name(Reciprocal.type_name(), 2)
-sfg.set_execution_time_of_type_name(MADS.type_name(), 1)
-sfg.set_execution_time_of_type_name(Reciprocal.type_name(), 1)
+sfg.set_latency_of_type(MADS, 3)
+sfg.set_latency_of_type(Reciprocal, 2)
+sfg.set_execution_time_of_type(MADS, 1)
+sfg.set_execution_time_of_type(Reciprocal, 1)
 
 # %%
 # Create an ASAP schedule.
diff --git a/examples/memory_constrained_scheduling.py b/examples/memory_constrained_scheduling.py
index 8b3af165a25ed2aa5bbdf09c7d993d1463bd710b..fe87b123c87243c4562846dd0c7958ef0cc4e454 100644
--- a/examples/memory_constrained_scheduling.py
+++ b/examples/memory_constrained_scheduling.py
@@ -21,10 +21,10 @@ sfg
 
 # %%
 # Set latencies and execution times.
-sfg.set_latency_of_type_name(Butterfly.type_name(), 3)
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 2)
-sfg.set_execution_time_of_type_name(Butterfly.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
+sfg.set_latency_of_type(Butterfly, 3)
+sfg.set_latency_of_type(ConstantMultiplication, 2)
+sfg.set_execution_time_of_type(Butterfly, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
 
 # # %%
 # Generate an ASAP schedule for reference
diff --git a/examples/scheduling_pipelining_retiming.py b/examples/scheduling_pipelining_retiming.py
index 562d4fc55dafd3e9e1162ed4cb5be34221575323..8e2b329d2170404309bc260ea8baefd400a1cc1f 100644
--- a/examples/scheduling_pipelining_retiming.py
+++ b/examples/scheduling_pipelining_retiming.py
@@ -31,10 +31,10 @@ sfg
 
 # %%
 # Set latencies and execution times of the operations.
-sfg.set_latency_of_type_name(Addition.type_name(), 1)
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 3)
-sfg.set_execution_time_of_type_name(Addition.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
+sfg.set_latency_of_type(Addition, 1)
+sfg.set_latency_of_type(ConstantMultiplication, 3)
+sfg.set_execution_time_of_type(Addition, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
 
 # %%
 # Print the critical path Tcp and the iteration period bound Tmin.
diff --git a/examples/secondorderdirectformiir.py b/examples/secondorderdirectformiir.py
index ce7d3a29003266009c9e72905aab2f9624942092..605b840da538b7eeadf6e20e9b57097d082a4437 100644
--- a/examples/secondorderdirectformiir.py
+++ b/examples/secondorderdirectformiir.py
@@ -36,10 +36,10 @@ sfg
 
 # %%
 # Set latencies and execution times
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 2)
-sfg.set_latency_of_type_name(Addition.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
-sfg.set_execution_time_of_type_name(Addition.type_name(), 1)
+sfg.set_latency_of_type(ConstantMultiplication, 2)
+sfg.set_latency_of_type(Addition, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
+sfg.set_execution_time_of_type(Addition, 1)
 
 # %%
 # Create schedule
diff --git a/examples/secondorderdirectformiir_architecture.py b/examples/secondorderdirectformiir_architecture.py
index 32188569c2366488d0a98b17c0a876d8f872a48c..4e2fde7c4a23610d8599425c67a3a7df44d95627 100644
--- a/examples/secondorderdirectformiir_architecture.py
+++ b/examples/secondorderdirectformiir_architecture.py
@@ -36,10 +36,10 @@ sfg
 
 # %%
 # Set latencies and execution times.
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 2)
-sfg.set_latency_of_type_name(Addition.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
-sfg.set_execution_time_of_type_name(Addition.type_name(), 1)
+sfg.set_latency_of_type(ConstantMultiplication, 2)
+sfg.set_latency_of_type(Addition, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
+sfg.set_execution_time_of_type(Addition, 1)
 
 # %%
 # Create schedule.
diff --git a/examples/thirdorderblwdf.py b/examples/thirdorderblwdf.py
index 20fcabd3a95454d65b0c557c5b3332c91474f4c7..6a34670ccb34754c6ab9f08269cc0dd43be0633d 100644
--- a/examples/thirdorderblwdf.py
+++ b/examples/thirdorderblwdf.py
@@ -33,10 +33,10 @@ sfg
 
 # %%
 # Set latencies and execution times
-sfg.set_latency_of_type_name(SymmetricTwoportAdaptor.type_name(), 4)
-sfg.set_latency_of_type_name(Addition.type_name(), 1)
-sfg.set_execution_time_of_type_name(SymmetricTwoportAdaptor.type_name(), 1)
-sfg.set_execution_time_of_type_name(Addition.type_name(), 1)
+sfg.set_latency_of_type(SymmetricTwoportAdaptor, 4)
+sfg.set_latency_of_type(Addition, 1)
+sfg.set_execution_time_of_type(SymmetricTwoportAdaptor, 1)
+sfg.set_execution_time_of_type(Addition, 1)
 
 # %%
 # Simulate
diff --git a/examples/threepointwinograddft.py b/examples/threepointwinograddft.py
index b93b1e5ecf5586c2f29afb9440c328609ba7953a..e372136da18085db5153623b8e464aeeab5c4f37 100644
--- a/examples/threepointwinograddft.py
+++ b/examples/threepointwinograddft.py
@@ -48,10 +48,10 @@ sfg
 
 # %%
 # Set latencies and execution times
-sfg.set_latency_of_type_name(ConstantMultiplication.type_name(), 2)
-sfg.set_latency_of_type_name(AddSub.type_name(), 1)
-sfg.set_execution_time_of_type_name(ConstantMultiplication.type_name(), 1)
-sfg.set_execution_time_of_type_name(AddSub.type_name(), 1)
+sfg.set_latency_of_type(ConstantMultiplication, 2)
+sfg.set_latency_of_type(AddSub, 1)
+sfg.set_execution_time_of_type(ConstantMultiplication, 1)
+sfg.set_execution_time_of_type(AddSub, 1)
 
 # %%
 # Generate schedule