// Check for templated class as template argument for method! namespace gtsam { #include class Cal3Bundler; template class PinholeCamera {}; typedef gtsam::PinholeCamera PinholeCameraCal3Bundler; class NonlinearFactorGraph { template }> void addPrior(size_t key, const T& prior, const gtsam::noiseModel::Base* noiseModel); }; // Typedef with template as template arg. template class GeneralSFMFactor {}; typedef gtsam::GeneralSFMFactor, gtsam::Point3> GeneralSFMFactorCal3Bundler; // Template as template arg for class property. class SfmTrack { std::vector> measurements; }; } // namespace gtsam // class VariableIndex { // VariableIndex(); // // template // VariableIndex(const T& graph); // VariableIndex(const T& graph, size_t nVariables); // };