Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- template<size_t I = 0, typename DataType, typename... Tp>
- void Forward(const DataType& input, std::tuple<Tp...>& network)
- {
- std::get<I>(network).InputParameter() = input;
- std::get<I>(network).Forward(std::get<I>(network).InputParameter(),
- std::get<I>(network).OutputParameter());
- ForwardTail<I + 1, Tp...>(network);
- }
- template<size_t I = 1, typename... Tp>
- typename std::enable_if<I == sizeof...(Tp), void>::type
- ForwardTail(std::tuple<Tp...>& network)
- {
- LinkParameter(network);
- }
- template<size_t I = 1, typename... Tp>
- typename std::enable_if<I < sizeof...(Tp), void>::type
- ForwardTail(std::tuple<Tp...>& network)
- {
- std::get<I>(network).Forward(std::get<I - 1>(network).OutputParameter(),
- std::get<I>(network).OutputParameter());
- ForwardTail<I + 1, Tp...>(network);
- }
Add Comment
Please, Sign In to add comment