v0.1.2
This commit is contained in:
18
robogauge/utils/config.py
Normal file
18
robogauge/utils/config.py
Normal file
@@ -0,0 +1,18 @@
|
||||
import inspect
|
||||
|
||||
class Config:
|
||||
# From https://github.com/leggedrobotics/legged_gym/blob/master/legged_gym/envs/base/base_config.py
|
||||
def __init__(self) -> None:
|
||||
""" Initializes all member classes recursively. Ignores all namse starting with '__' (buit-in methods)."""
|
||||
self.init_member_classes(self)
|
||||
|
||||
@staticmethod
|
||||
def init_member_classes(obj):
|
||||
for key in dir(obj):
|
||||
if key == "__class__":
|
||||
continue
|
||||
var = getattr(obj, key)
|
||||
if inspect.isclass(var):
|
||||
i_var = var()
|
||||
setattr(obj, key, i_var)
|
||||
Config.init_member_classes(i_var)
|
||||
Reference in New Issue
Block a user