Skip to content

Commit b03a47e

Browse files
committed
Cleanup
1 parent 23dae9e commit b03a47e

File tree

4 files changed

+21
-12
lines changed

4 files changed

+21
-12
lines changed

include/openPMD/backend/ScientificDefaults.hpp

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,17 @@ class ScientificDefaults
2828
void defaults_impl(OpenpmdStandard);
2929

3030
protected:
31-
void addDefaultsRecursively(OpenpmdStandard);
32-
void addDefaults(OpenpmdStandard);
31+
// Called upon Iteration::close(), will fill in defaults below Iteration
32+
// level. If the Iteration is not explicitly closed, will be called upon
33+
// Series::close().
34+
void writeDefaultsRecursively(OpenpmdStandard);
35+
// Currently called internally only from writeDefaultsRecursively
36+
void writeDefaults(OpenpmdStandard);
37+
// Convention: This is called for each openPMD object (group, dataset)
38+
// exactly once and only upon its most derived object (e.g. upon
39+
// RecordComponent, not BaseRecordComponent). The readDefaults() method will
40+
// deal with parent class definitions. This is necessary since the derived
41+
// class may override standard attribute definitions from a base class.
3342
void readDefaults(OpenpmdStandard);
3443
};
3544

src/Iteration.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ Iteration &Iteration::close(bool _flush)
113113

114114
if (access::write(IOHandler()->m_frontendAccess))
115115
{
116-
addDefaultsRecursively(IOHandler()->m_standard);
116+
writeDefaultsRecursively(IOHandler()->m_standard);
117117
}
118118

119119
if (_flush)

src/backend/MeshRecordComponent.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,9 @@ MeshRecordComponent::MeshRecordComponent(
3939

4040
void MeshRecordComponent::read()
4141
{
42+
readBase();
4243
internal::ScientificDefaults<MeshRecordComponent>::readDefaults(
4344
IOHandler()->m_standard);
44-
45-
readBase();
4645
}
4746

4847
void MeshRecordComponent::flush(

src/backend/ScientificDefaults.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -569,7 +569,7 @@ void ScientificDefaults<Child>::addParentDefaults(OpenpmdStandard standard)
569569
// Cannot directly call read_impl as it is private
570570
if constexpr (write)
571571
{
572-
asChild().ScientificDefaults<Parent>::addDefaults(standard);
572+
asChild().ScientificDefaults<Parent>::writeDefaults(standard);
573573
}
574574
else
575575
{
@@ -578,9 +578,10 @@ void ScientificDefaults<Child>::addParentDefaults(OpenpmdStandard standard)
578578
}
579579

580580
template <typename Child>
581-
void ScientificDefaults<Child>::addDefaultsRecursively(OpenpmdStandard standard)
581+
void ScientificDefaults<Child>::writeDefaultsRecursively(
582+
OpenpmdStandard standard)
582583
{
583-
addDefaults(standard);
584+
writeDefaults(standard);
584585
if constexpr (IsContainer_v<Child>)
585586
{
586587
using Container_t = AsContainer_t<Child>;
@@ -602,12 +603,12 @@ void ScientificDefaults<Child>::addDefaultsRecursively(OpenpmdStandard standard)
602603
for (auto &[_, right] : asChild().meshes)
603604
{
604605
(void)_;
605-
right.ScientificDefaults<Mesh>::addDefaultsRecursively(standard);
606+
right.ScientificDefaults<Mesh>::writeDefaultsRecursively(standard);
606607
}
607608
for (auto &[_, right] : asChild().particles)
608609
{
609610
(void)_;
610-
right.ScientificDefaults<ParticleSpecies>::addDefaultsRecursively(
611+
right.ScientificDefaults<ParticleSpecies>::writeDefaultsRecursively(
611612
standard);
612613
}
613614
}
@@ -616,7 +617,7 @@ void ScientificDefaults<Child>::addDefaultsRecursively(OpenpmdStandard standard)
616617
for (auto &[_, right] : asChild().particlePatches)
617618
{
618619
(void)_;
619-
right.ScientificDefaults<PatchRecord>::addDefaultsRecursively(
620+
right.ScientificDefaults<PatchRecord>::writeDefaultsRecursively(
620621
standard);
621622
}
622623
}
@@ -803,7 +804,7 @@ void ScientificDefaults<Child>::defaults_impl(OpenpmdStandard standard)
803804
}
804805

805806
template <typename Child>
806-
void ScientificDefaults<Child>::addDefaults(OpenpmdStandard standard)
807+
void ScientificDefaults<Child>::writeDefaults(OpenpmdStandard standard)
807808
{
808809
defaults_impl</* write = */ true>(standard);
809810
}

0 commit comments

Comments
 (0)