Hi all,
My google-fu is failing me - anyone happen to know what the Arnold C++ API to list all the loaded nodes is?
i.e. the thing that's probably called under the hook when you execute "kick -nodes"
Cheers,
Alan.
Solved! Go to Solution.
Solved by Stephen.Blair. Go to Solution.
Here's the Python from the old pykick. The C++ is basically the same calls...
def PrintRangeOfNodes(first, sort): nodes = [] i = 0 it = AiUniverseGetNodeEntryIterator(AI_NODE_ALL) # skip first node entries to start on the specified one while not AiNodeEntryIteratorFinished(it) and i < first: AiNodeEntryIteratorGetNext(it) i += 1 # # while not AiNodeEntryIteratorFinished(it): nentry = AiNodeEntryIteratorGetNext(it) nodename = AiNodeEntryGetName(nentry) typename = AiNodeEntryGetTypeName(nentry) nodes.append([nodename, typename]) AiNodeEntryIteratorDestroy(it) # # ... #
You'll want to use the AiUniverseGetNodeEntryIterator(AI_NODE_ALL) to get an iterator that lets you examine all the node types. The you call AiNodeEntryIteratorGetNext() on the iterator to get an AtNodeEntry which you can then pass to AiNodeEntryGetName(), AiNodeEntryGetTypeName, etc. to get information on these nodes. Take a look at the doxygen/headers included in the Arnold SDK to get info on all these functions. Hopefully this helps?