Go to the documentation of this file.
22 template <
typename Container>
24 template <
typename Container>
30 template <
typename Signature,
typename Traits_,
bool isLegacy>
33 template <
typename Out,
typename In,
typename Traits_>
37 static_assert( std::is_base_of_v<Algorithm, base_class>,
"BaseClass must inherit from Algorithm" );
49 if ( std::is_pointer_v<In> ) {
53 [](
auto&
h ) { h.setOptional( true ); } );
61 details::make_vector_of_handles<decltype( this->m_outputs )>( this, m_outputLocations );
62 if constexpr ( details::is_optional_v<Out> ) {
65 std::for_each( this->m_outputs.begin(), this->m_outputs.end(),
66 []( auto& h ) { h.setOptional( true ); } );
87 auto out = ( *this )( std::as_const( ins ) );
88 if (
out.size() != m_outputs.size() ) {
108 template <
typename T>
114 template <
typename T>
123 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
T back_inserter(T... args)
void reserve(size_type size)
std::vector< DataObjID > to_DataObjID(const std::vector< std::string > &in)
virtual const std::string & message() const
error message to be printed
Handles make_vector_of_handles(IDataHandleHolder *owner, const std::vector< DataObjID > &init)
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
virtual const std::string & tag() const
name tag for the exception, or exception type
virtual const StatusCode & code() const
StatusCode for Exception.
Gaudi::cpp17::detected_or_t< Base, detail2::BaseClass_t, Tr > BaseClass_t
constexpr static const auto FAILURE
Gaudi::cpp17::detected_or_t< DataObjectWriteHandle< T >, detail2::OutputHandle_t, Tr, T > OutputHandle_t
Implementation of property with value of concrete type.
auto put(const DataObjectHandle< Out1 > &out_handle, Out2 &&out)