splitted types in hpp and cpp