discuss where should we place the struct, in .h or .c