With the filecache you can write a frame range in regular sop (with Evaluate as Frame Range set). But you still can override that using tops and a range generate.
When trying to build my own caching node it seems like I can only have either 'render current frame' set and working with tops or have it set to 'frame range' and have it working with sops. The only workaround I found was not using my custom rop in the ropfetch but the filecache inside.
How does the filecache does this? What's the trick here?