diff --git a/modules/util/util.py b/modules/util/util.py
index c5a3f130b58e383a83499d0f06a601c09267bce3..b850bab5f40058855431d87b97f4a0c40bdcc1b7 100644
--- a/modules/util/util.py
+++ b/modules/util/util.py
@@ -55,6 +55,18 @@ ds_range.update({'temp_3_9um_nom': 'actual_range'})
 ds_range.update({'cloud_fraction': 'actual_range'})
 
 
+def make_tf_callable_generator(the_generator):
+    class MyCallable:
+        def __init__(self, gen):
+            self.gen = gen
+
+        def __call__(self):
+            return self.gen
+
+    the_callable = MyCallable(the_generator)
+    return the_callable
+
+
 def get_fill_attrs(name):
     if name in ds_fill:
         v = ds_fill[name]