MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ validate_operation_data_types()

template<ComputeData InputType = std::vector<Kakshya::DataVariant>, ComputeData OutputType = InputType>
void MayaFlux::Yantra::ComputeOperation< InputType, OutputType >::validate_operation_data_types ( ) const
inlineprivate

Validate input/output types and warn about marker types.

Definition at line 267 of file ComputeOperation.hpp.

268 {
269 if constexpr (std::is_same_v<InputType, Kakshya::Region>) {
270 std::cerr << "OPERATION WARNING: InputType 'Region' is an expressive marker, not a data holder.\n"
271 << "Operations will process coordinate data rather than signal data.\n"
272 << "Consider using DataVariant or SignalSourceContainer for signal processing.\n";
273 } else if constexpr (std::is_same_v<InputType, Kakshya::RegionGroup>) {
274 std::cerr << "OPERATION WARNING: InputType 'RegionGroup' is an expressive marker, not a data holder.\n"
275 << "Operations will process coordinate data rather than signal data.\n"
276 << "Consider using DataVariant or SignalSourceContainer for signal processing.\n";
277 } else if constexpr (std::is_same_v<InputType, std::vector<Kakshya::RegionSegment>>) {
278 std::cerr << "OPERATION WARNING: InputType 'RegionSegments' are expressive markers, not primary data holders.\n"
279 << "Operations will attempt to extract data from segment metadata.\n"
280 << "Consider using DataVariant or SignalSourceContainer for direct signal processing.\n";
281 }
282
283 if constexpr (std::is_same_v<OutputType, Kakshya::Region>) {
284 std::cerr << "OPERATION INFO: OutputType 'Region' will create spatial/temporal markers with results as metadata.\n";
285 } else if constexpr (std::is_same_v<OutputType, Kakshya::RegionGroup>) {
286 std::cerr << "OPERATION INFO: OutputType 'RegionGroup' will organize results into spatial/temporal groups.\n";
287 } else if constexpr (std::is_same_v<OutputType, std::vector<Kakshya::RegionSegment>>) {
288 std::cerr << "OPERATION INFO: OutputType 'RegionSegments' will create segments with results in metadata.\n";
289 }
290 }