The frequency of Omni.isaac.sensor.camera class has potential wrong interaction with pausing and resuming SimulationContext

From the _data_acquisition_callback API of the omni.issac.sensor.camera class, it seems that the data will only update if the current_time is exactly divisible by the period of the camera.

    def _data_acquisition_callback(self, event: carb.events.IEvent):
        frame_number = (
            og.Controller()
            .node("/Render/PostProcess/SDGPipeline/PostProcessDispatcher")
            .get_attribute("outputs:swhFrameNumber")
            .get()
        )
        current_time = self._core_nodes_interface.get_sim_time_at_swh_frame(frame_number)
        if round(current_time % self.get_dt(), 4) == 0:
            self._current_frame["rendering_frame"] = frame_number
            self._current_frame["rgba"] = self._rgb_annotator.get_data()
            self._current_frame["rendering_time"] = current_time
            for key in self._current_frame:
                if key not in ["rgba", "rendering_time", "rendering_frame"]:
                    # to be added: conversion to each backend
                    self._current_frame[key] = self._custom_annotators[key].get_data()
        return

However, if SimulationContext.play() was called somewhere which seems to advance the timeline internally by one physics step, the current_time of the simulation may cause the above condition to be never triggered again.

Assuming that the physics_dt = 0.001 and the render_dt=0.05 and the camera dt to be 0.1. If you do

world.play()
while True:
    world.step(render=True)

In the _data_acquisition_callback, the current_time will be 0.051, 0.101, 0.151… which are all no longer exactly divisible by the camera dt.

Deeply appreciate if you could help confirm whether this behaviour is intended and fix if it is a bug. Thanks in advance.