Where are PyNode socket values stored?

I'm having trouble wrapping my head around how information flows through PyNodes.. Where/how should I set the value of my node's output sockets?

I've been trying to implement this in my node's update method. My idea is that I should be able to access the value of the input sockets, do something with the values, then set the value of the output sockets. My problem is that it doesn't appear that the NodeSocket class actually stores values anywhere.

1. How can I access the value in my node's input sockets?
2. Where should I implement the actual processing that my node should be responsible for?
3. How can I set the value of my node's output sockets?
• check this example blenderartists.org/forum/… – Chebhou May 21 '15 at 3:32
• related: blender.stackexchange.com/questions/23430/…, Jacques Lucke says: For now pynodes aren't ment to work in cycles/compositor/.. They are visually there but won't do anything. I think the script by Atom only works because it is such a simple node that does in fact nothing. Might be better to extend Animation Nodes for your needs. – p2or May 21 '15 at 6:55
• Similar to what I came up with here – sambler May 21 '15 at 13:03
• @poor I should be able to make nodes do actual work, as long as they live in a custom node tree type, right? What I think I'm trying to head towards is wrapping some/all of the scipy.ndimage methods, along with some input/output nodes for reading/writing numpy arrays from/to various filetypes. – ajwood May 21 '15 at 14:57
• My experience in this is very limited..., but maybe this: blender.stackexchange.com/questions/23465/… could be interesting in your case. – p2or May 21 '15 at 17:29