template<typename v, int... prp>
struct object_creator< v, prp >
It create a boost::fusion vector with the selected properties.
- Template Parameters
-
v | boost::fusion::vector |
prp | selected properties |
Create a compile-time object and copy from the selected properties
typedef Point_test<float>::type vboost;
boost::fusion::at_c<p::x>(src.data) = 1.0;
boost::fusion::at_c<p::y>(src.data) = 2.0;
for (size_t i = 0 ; i < 3 ; i++)
boost::fusion::at_c<p::v>(src.data)[i] = i + 5.0;
BOOST_REQUIRE_EQUAL(boost::fusion::at_c<0>(dst.data),1.0);
BOOST_REQUIRE_EQUAL(boost::fusion::at_c<1>(dst.data),2.0);
for (size_t i = 0 ; i < 3 ; i++)
BOOST_REQUIRE_EQUAL(boost::fusion::at_c<2>(dst.data)[i],i + 5.0);
Create a compile-time Encap object and copy from the selected properties
v_point.resize(2);
v_point_red.resize(2);
v_point.template get<p::x>(0) = 1.0;
v_point.template get<p::y>(0) = 2.0;
for (size_t i = 0 ; i < 3 ; i++)
v_point.template get<p::v>(0)[i] = i + 5.0;
auto src_e = v_point.get(0);
auto dst_e = v_point_red.get(0);
BOOST_REQUIRE_EQUAL(v_point_red.get(0).template get<0>(),1.0);
BOOST_REQUIRE_EQUAL(v_point_red.get(0).template get<1>(),2.0);
for (size_t i = 0 ; i < 3 ; i++)
BOOST_REQUIRE_EQUAL(v_point_red.get(0).template get<2>()[i],i + 5.0);
Create a compile-time object and copy to the selected properties
util_test.hpp object write example
Create a compile-time Encap object and copy to the selected properties
util_test.hpp object write encap example
Definition at line 255 of file object_creator.hpp.