ObjectList<Primitive> Matrix::outputPrimitives() const { PrimitiveList primitive_list; int n; n = _scalars.count(); for (int i = 0; i< n; ++i) { primitive_list.append(kst_cast<Primitive>(_scalars.values().at(i))); } n = _strings.count(); for (int i = 0; i< n; ++i) { primitive_list.append(kst_cast<Primitive>(_strings.values().at(i))); } n = _vectors.count(); for (int i = 0; i< n; ++i) { VectorPtr V = _vectors.values().at(i); primitive_list.append(kst_cast<Primitive>(V)); primitive_list.append(V->outputPrimitives()); } return primitive_list; }