Skip to content
Snippets Groups Projects
Commit bd5e7d7c authored by wgodoy's avatar wgodoy
Browse files

Back to bp1 name.bp.dir/name.bp.rank format

parent b71b5e26
No related branches found
No related tags found
1 merge request!141Back to bp1 name.bp.dir/name.bp.rank format
......@@ -129,7 +129,7 @@ void BPFileWriter::InitTransports()
auto transportsNames = m_TransportsManager.GetFilesBaseNames(
m_Name, m_IO.m_TransportsParameters);
auto bpBaseNames = m_BP1Writer.GetBPBaseNames(transportsNames);
auto bpNames = m_BP1Writer.GetBPNames(bpBaseNames);
auto bpNames = m_BP1Writer.GetBPNames(transportsNames);
m_TransportsManager.OpenFiles(bpBaseNames, bpNames, m_OpenMode,
m_IO.m_TransportsParameters,
......
......@@ -82,43 +82,45 @@ void BP1Base::InitParameters(const Params &parameters)
std::vector<std::string>
BP1Base::GetBPBaseNames(const std::vector<std::string> &names) const noexcept
{
auto lf_GetBPBaseName = [](const std::string &name) -> std::string {
const std::string bpBaseName(AddExtension(name, ".bp") + ".dir");
return bpBaseName;
};
std::vector<std::string> bpBaseNames;
bpBaseNames.reserve(names.size());
for (const auto &name : names)
{
bpBaseNames.push_back(GetBPBaseName(name));
bpBaseNames.push_back(lf_GetBPBaseName(name));
}
return bpBaseNames;
}
std::string BP1Base::GetBPBaseName(const std::string &name) const noexcept
{
return AddExtension(name, ".bp");
}
std::vector<std::string>
BP1Base::GetBPNames(const std::vector<std::string> &names) const noexcept
BP1Base::GetBPNames(const std::vector<std::string> &baseNames) const noexcept
{
auto lf_GetBPName = [](const std::string &baseName,
const int rank) -> std::string {
const std::string bpBaseName = AddExtension(baseName, ".bp");
// name.bp.dir/name.bp.rank
const std::string bpName(bpBaseName + ".dir/" + bpBaseName + "." +
std::to_string(rank));
return bpName;
};
std::vector<std::string> bpNames;
bpNames.reserve(names.size());
bpNames.reserve(baseNames.size());
for (const auto &name : names)
for (const auto &baseName : baseNames)
{
bpNames.push_back(GetBPName(name));
bpNames.push_back(lf_GetBPName(baseName, m_BP1Aggregator.m_RankMPI));
}
return bpNames;
}
std::string BP1Base::GetBPName(const std::string &name) const noexcept
{
const std::string baseName = AddExtension(name, ".bp");
// opens a file transport under name.bp/name.bp.rank
const std::string bpName(baseName + "/" + baseName + "." +
std::to_string(m_BP1Aggregator.m_RankMPI));
return bpName;
}
// PROTECTED
void BP1Base::InitParameterProfile(const std::string value)
{
......
......@@ -75,7 +75,7 @@ public:
void InitParameters(const Params &parameters);
/**
* Vector version of BPBaseName
* Vector version of BPBaseNames
* @param names
* @return vector of base (name.bp) names
*/
......@@ -83,28 +83,12 @@ public:
GetBPBaseNames(const std::vector<std::string> &names) const noexcept;
/**
* Checks if input name has .bp extension and returns a .bp directory
* name
* @param name input (might or not have .bp)
* @return either name.bp (name has no .bp) or name (name has .bp
* extension)
*/
std::string GetBPBaseName(const std::string &name) const noexcept;
/**
* Vector version of GetBPName
* @param names
* Get BP names from base names
* @param names inputs
* @return
*/
std::vector<std::string>
GetBPNames(const std::vector<std::string> &names) const noexcept;
/**
* Gets the name for bp buffer based on rank
* @param name
* @return name.bp/name.bp.rank
*/
std::string GetBPName(const std::string &name) const noexcept;
GetBPNames(const std::vector<std::string> &baseNames) const noexcept;
/** Return type of the CheckAllocation function. */
enum class ResizeResult
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment