66 if (package_path.empty())
75 config->collectFiles(package_path, gen_time,
gen_files_);
83 if (gen_file->getStatus() == status)
100 return std::filesystem::is_directory(package_path) && !std::filesystem::is_empty(package_path);
109 return std::filesystem::is_regular_file(
getPackagePath() / SETUP_ASSISTANT_FILE);
115 std::vector<std::string> warnings;
119 if (srdf_config->getGroups().empty())
121 warnings.push_back(
"No robot model planning groups have been created");
125 if (srdf_config->getDisabledCollisions().empty())
127 warnings.push_back(
"No self-collisions have been disabled");
131 if (srdf_config->getEndEffectors().empty())
133 warnings.push_back(
"No end effectors have been added");
137 if (srdf_config->getVirtualJoints().empty())
139 warnings.push_back(
"No virtual joints have been added");
145 warnings.push_back(
"<b>No author name added</b>");
151 warnings.push_back(
"<b>No valid email address added</b>");
160 for (
const auto& group : srdf_config->getGroups())
163 if (!group.joints_.empty())
165 if (!group.links_.empty())
167 if (!group.chains_.empty())
169 if (!group.subgroups_.empty())
void collectVariables(std::vector< TemplateVariable > &variables) override
Collect key/value pairs for use in templates.
DataWarehousePtr config_data_
static std::vector< TemplateVariable > variables
void loadFiles()
Populate the 'Files to be generated' list.
void setShouldGenerate(const std::string &rel_path, bool should_generate)
const std::filesystem::path & getPackagePath()
void onInit() override
Overridable initialization method.
void loadTemplateVariables()
std::vector< std::string > getIncompleteWarnings() const
std::unordered_map< std::string, bool > should_generate_
std::vector< GeneratedFilePtr > gen_files_
Vector of all files to be generated.
bool hasMatchingFileStatus(FileStatus status) const
std::string getInvalidGroupName() const
std::shared_ptr< PackageSettingsConfig > package_settings_
bool hasSetupAssistantFile()
FileStatus
Status associated with each GeneratedFile.