@David_Keeney This is a good start! There are a few matrix classes missing:
SparseBinaryMatrix
SegmentMatrixAdapter
SparseMatrixConnections
SparseMatrix
SparseRLEMatrix
They are all templated and so for python the type SM32 is
nupic::SparseMatrix<nupic::UInt32, nupic::Real32, nupic::Int32, nupic::Real64, nupic::DistanceToZero< nupic::Real32>> .
In python SM_01_32_32 is nupic::SparseBinaryMatrix<nupic::UInt32, nupic::UInt32> .
Hopefully at some point we can replace the matrix stuff with libraries like Eigen or Blaze.