Skip to content

collect_rop_frame_range

Collector plugin for frames data on ROP instances.

CollectRopFrameRange

Bases: HoudiniInstancePlugin

Collect all frames which would be saved from the ROP nodes

Source code in client/ayon_houdini/plugins/publish/collect_rop_frame_range.py
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
class CollectRopFrameRange(plugin.HoudiniInstancePlugin):
    """Collect all frames which would be saved from the ROP nodes"""

    order = pyblish.api.CollectorOrder
    label = "Collect RopNode Frame Range"

    def process(self, instance):

        node_path = instance.data.get("instance_node")
        if node_path is None:
            # Instance without instance node like a workfile instance
            self.log.debug(
                "No instance node found for instance: {}".format(instance)
            )
            return

        ropnode = hou.node(node_path)
        frame_data = lib.get_frame_data(
            ropnode, self.log
        )

        if not frame_data:
            return

        # Log debug message about the collected frame range
        self.log.debug(
            "Collected frame_data: {}".format(frame_data)
        )

        instance.data.update(frame_data)