shouldn't the template parameters for this class be named `T_AreaType, T_Stride` and so forth?