void ProgramOptions::findMissingOptions(const OptionGroup& group, SetString& missing) const { for (OptionMap::const_iterator it = group.getOptions().begin(); it != group.getOptions().end(); ++it) { if (it->second.isMandatory() && !isOptionDefined (it->first)){ missing.insert(it->second.getName()); } } for (OptionGroupMap::const_iterator git = group.getGroups().begin(); git != group.getGroups().end(); ++git) { findMissingOptions(git->second, missing); } }