I am trying to write a content manager for my game. It will load files from the drive, or if the file has been requested before, it will return the same data without loading it from the drive again. When I think about the way the content manager works in XNA, you have to specify the type of content you want to load as a templated type. My question is what happens to the backing storage solution when I template different types of content? I just want to have to create one ContentManager instance, but have it Load<>() multiple types of data. I am confused as to how to do this.
My understanding of templates is that, if I just template the function, it will create multiple copies of the function for each type I use. I am just confused as to how this affects the storage as I will need to insert and get data of the type of the function.