# from isaaclab.envs import ManagerBasedRLEnv, ManagerBasedRLEnvCfg
# from sim_improvement.environments.droid.rollout_cfg import DROIDJointPosRolloutCfg, DROIDRelativeIKRolloutCfg

from .lbm import *



# =============================================================================
# Environment Registration
# =============================================================================

# gym.register(
#     id="DROID-JointPos-Rollout",
#     entry_point=ManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": DROIDJointPosRolloutCfg,
#     },
# )
# gym.register(
#     id="DROID-RelativeIK-Rollout",
#     entry_point=ManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": DROIDRelativeIKRolloutCfg,
#     },
# )
# class DynamicManagerBasedRLEnv(ManagerBasedRLEnv):
#     def __init__(
#         self, cfg: ManagerBasedRLEnvCfg, *args, usd_file: str | None = None, **kwargs
#     ):
#         if usd_file is not None:
#             self.usd_file = usd_file
#             cfg.dynamic_setup(usd_file=usd_file)
#         super().__init__(cfg=cfg, *args, **kwargs)

#         # from isaacsim.core.utils.stage import get_current_stage
#         # stage = get_current_stage()
#         # icream = stage.GetPrimAtPath("/World/envs/env_0/scene/icecream")
#         # breakpoint()

# gym.register(
#     id="DROID-RL-Eval",
#     entry_point=ManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": DROIDJointPosEvalCfg,
#     },
# )

# gym.register(
#     id="DROID-Teleop",
#     entry_point=ManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": DROIDTeleopCfg,
#     },
# )

# gym.register(
#     id="DROID-JointPos-Train",
#     entry_point=ManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": DROIDJointPosTrainCfg,
#     },
# )
# gym.register(
#     id="DROID-FoodBussingRL",
#     entry_point=DynamicManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": DroidRLCfg,
#         # "usd_file": str(DATA_PATH / "food_bussing/scene.usda"),
#         "usd_file": str(
#             DATA_PATH / "lightwheel_g60/RA_LW_Assets_20251203/Kitchen_Scene/test.usd"
#         ),
#     },
# )

# # gym.register(
# #     id="RL-Test",
# #     entry_point=ManagerBasedRLEnv,
# #     disable_env_checker=True,
# #     order_enforce=False,
# #     kwargs={
# #         "env_cfg_entry_point": ReachEnvCfg,
# #         # "usd_file": str(DATA_PATH / "food_bussing/scene.usda"),
# #         "usd_file": str(
# #             DATA_PATH / "lightwheel_g60/RA_LW_Assets_20251203/Kitchen_Scene/test.usd"
# #         ),
# #     },
# # )

# gym.register(
#     id="RL-Pnp",
#     entry_point=ManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": PnpEnvCfg,
#     },
# )

# gym.register(
#     id="MarkerInBowl",
#     entry_point=DynamicManagerBasedRLEnv,
#     disable_env_checker=True,
#     order_enforce=False,
#     kwargs={
#         "env_cfg_entry_point": MarkerInBowlCfg,
#         "usd_file": str(
#             "/home/arhanjain/projects/sim-improvement/USDs/marker_in_bowl.usd"
#         ),
#     },
# )

