When in doubt use *. If you don't have a pointer it is a value type, so it gets copied everytime it gets passed anywhere. Basically if it's fat and there should only be one copy, use a *.