Skip to content

Commit 1fbc579

Browse files
committed
Remove raw methods
1 parent b1507b1 commit 1fbc579

2 files changed

Lines changed: 1 addition & 102 deletions

File tree

include/openPMD/LoadStoreChunk.hpp

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,6 @@ namespace auxiliary::detail
4545
#undef OPENPMD_ENUMERATE_TYPES
4646
} // namespace auxiliary::detail
4747

48-
enum class EnqueuePolicy : std::uint8_t
49-
{
50-
Defer,
51-
Immediate
52-
};
53-
5448
/*
5549
* Actual data members of `ConfigureLoadStore<>` and methods that don't
5650
* depend on the ChildClass template parameter. By extracting the members to
@@ -182,20 +176,11 @@ class ConfigureLoadStore
182176

183177
[[nodiscard]] auto loadVariant() -> auxiliary::DeferredComputation<
184178
auxiliary::detail::shared_ptr_dataset_types>;
185-
186-
private:
187-
// Direct execution methods (with EnqueuePolicy)
188-
template <typename T>
189-
[[nodiscard]] auto loadRaw(EnqueuePolicy) -> std::shared_ptr<T>;
190-
191-
[[nodiscard]] auto loadVariantRaw(EnqueuePolicy)
192-
-> auxiliary::detail::shared_ptr_dataset_types;
193179
};
194180

195181
class ConfigureStoreChunkFromBuffer : public ConfigureLoadStore
196182
{
197183
friend class ConfigureLoadStore;
198-
friend class RecordComponent;
199184

200185
protected:
201186
auxiliary::WriteBuffer m_buffer;
@@ -256,19 +241,6 @@ class ConfigureStoreChunkFromBuffer : public ConfigureLoadStore
256241
"Cannot load chunk data into a buffer that is const or a "
257242
"unique_ptr.");
258243
}
259-
260-
private:
261-
// Direct execution method (with EnqueuePolicy)
262-
auto storeRaw(EnqueuePolicy) -> void;
263-
264-
template <typename X = void>
265-
auto loadRaw(EnqueuePolicy)
266-
{
267-
static_assert(
268-
auxiliary::dependent_false_v<X>,
269-
"Cannot load chunk data into a buffer that is const or a "
270-
"unique_ptr.");
271-
}
272244
};
273245

274246
class ConfigureLoadStoreFromBuffer : public ConfigureStoreChunkFromBuffer
@@ -305,10 +277,6 @@ class ConfigureLoadStoreFromBuffer : public ConfigureStoreChunkFromBuffer
305277

306278
// Enqueue method (deferred execution)
307279
auto load() -> auxiliary::DeferredComputation<void>;
308-
309-
private:
310-
// Direct execution method (with EnqueuePolicy)
311-
auto loadRaw(EnqueuePolicy) -> void;
312280
};
313281

314282
} // namespace openPMD

src/LoadStoreChunk.cpp

Lines changed: 1 addition & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -241,21 +241,6 @@ auto ConfigureLoadStore::load()
241241
});
242242
}
243243

244-
template <typename T>
245-
auto ConfigureLoadStore::loadRaw(EnqueuePolicy ep) -> std::shared_ptr<T>
246-
{
247-
auto res = m_rc.loadChunkAllocate_impl<T>(storeChunkConfig());
248-
switch (ep)
249-
{
250-
case EnqueuePolicy::Defer:
251-
break;
252-
case EnqueuePolicy::Immediate:
253-
m_rc.seriesFlush();
254-
break;
255-
}
256-
return res;
257-
}
258-
259244
struct VisitorEnqueueLoadVariantWithFlush
260245
{
261246
template <typename T, typename F>
@@ -313,21 +298,6 @@ struct VisitorLoadVariant
313298
}
314299
};
315300

316-
auto ConfigureLoadStore::loadVariantRaw(EnqueuePolicy ep)
317-
-> auxiliary::detail::shared_ptr_dataset_types
318-
{
319-
auto res = m_rc.visit<VisitorLoadVariant>(this->storeChunkConfig());
320-
switch (ep)
321-
{
322-
case EnqueuePolicy::Defer:
323-
break;
324-
case EnqueuePolicy::Immediate:
325-
m_rc.seriesFlush();
326-
break;
327-
}
328-
return res;
329-
}
330-
331301
ConfigureStoreChunkFromBuffer::ConfigureStoreChunkFromBuffer(
332302
auxiliary::WriteBuffer buffer, Datatype dt, ConfigureLoadStore &&core)
333303
: ConfigureLoadStore(std::move(core))
@@ -356,20 +326,6 @@ auto ConfigureStoreChunkFromBuffer::store()
356326
[dflush = deferFlush(m_rc)]() mutable -> void { dflush(); });
357327
}
358328

359-
auto ConfigureStoreChunkFromBuffer::storeRaw(EnqueuePolicy ep) -> void
360-
{
361-
this->m_rc.storeChunk_impl(
362-
std::move(m_buffer), m_datatype, storeChunkConfig());
363-
switch (ep)
364-
{
365-
case EnqueuePolicy::Defer:
366-
break;
367-
case EnqueuePolicy::Immediate:
368-
m_rc.seriesFlush();
369-
break;
370-
}
371-
}
372-
373329
auto ConfigureLoadStoreFromBuffer::load()
374330
-> auxiliary::DeferredComputation<void>
375331
{
@@ -394,29 +350,6 @@ auto ConfigureLoadStoreFromBuffer::load()
394350
});
395351
}
396352

397-
auto ConfigureLoadStoreFromBuffer::loadRaw(EnqueuePolicy ep) -> void
398-
{
399-
auto *shared_ptr = std::get_if<auxiliary::WriteBuffer::ReadSharedPtr>(
400-
&this->m_buffer.as_variant<auxiliary::WriteBufferTypes>());
401-
if (!shared_ptr)
402-
{
403-
throw std::runtime_error(
404-
"ConfigureLoadStoreFromBuffer must be instantiated with a "
405-
"non-const shared_ptr type.");
406-
}
407-
this->m_rc.loadChunk_impl(
408-
*shared_ptr, m_datatype, this->storeChunkConfig());
409-
switch (ep)
410-
{
411-
412-
case EnqueuePolicy::Defer:
413-
break;
414-
case EnqueuePolicy::Immediate:
415-
this->m_rc.seriesFlush();
416-
break;
417-
}
418-
}
419-
420353
void ConfigureLoadStore::extent_impl(Extent extent)
421354
{
422355
m_extent = std::make_optional<Extent>(std::move(extent));
@@ -446,9 +379,7 @@ void ConfigureStoreChunkFromBuffer::memorySelection_impl(MemorySelection sel)
446379
#define INSTANTIATE_METHOD_TEMPLATES(dtype) \
447380
template auto ConfigureLoadStore::load() \
448381
-> auxiliary::DeferredComputation<OPENPMD_APPLY_TEMPLATE( \
449-
std::shared_ptr, dtype)>; \
450-
template auto ConfigureLoadStore::loadRaw(EnqueuePolicy) \
451-
->std::shared_ptr<dtype>;
382+
std::shared_ptr, dtype)>;
452383
#define INSTANTIATE_METHOD_TEMPLATES_WITH_AND_WITHOUT_EXTENT(type) \
453384
INSTANTIATE_METHOD_TEMPLATES(type) \
454385
INSTANTIATE_METHOD_TEMPLATES(OPENPMD_ARRAY(type)) \

0 commit comments

Comments
 (0)