36 #ifndef RIEGL_RDB_POINTCLOUD_QUERYREMOVE_HPP 37 #define RIEGL_RDB_POINTCLOUD_QUERYREMOVE_HPP 51 namespace pointcloud {
84 explicit QueryRemove(riegl::rdb::PointcloudData *pointcloud);
91 operator bool()
const;
128 const std::string &attribute,
131 const int32_t stride = 0
135 template <
typename ValueType>
137 const std::string &attribute,
138 const ValueType &buffer,
139 const int32_t stride = 0
155 template <
typename ObjectType,
typename MemberPo
inter>
157 const std::string &attribute,
158 const ObjectType &
object,
159 const MemberPointer member
163 attribute,
object.*member,
164 static_cast<int32_t>(
sizeof(ObjectType))
169 template <
typename ObjectType,
typename MemberPo
inter>
171 const std::string &attribute,
172 const ObjectType &
object,
173 const MemberPointer member,
178 attribute, (
object.*member)[index],
179 static_cast<int32_t>(
sizeof(ObjectType))
205 std::shared_ptr<Private> data;
210 #endif // RIEGL_RDB_POINTCLOUD_QUERYREMOVE_HPP void bindBuffer(const std::string &attribute, const ValueType &buffer, const int32_t stride=0)
Bind attribute buffer.
DataType
Point attribute access data type.
ValueType * dataPointerOf(ValueType *const value)
Get pointer to variable or to data in a std::array or vector container.
uint32_t next(uint32_t count)
Remove points.
RIEGL Laser Measurement Systems GmbH, Austria.
DataType dataTypeOf()
Convenience wrapper for DataTypeOf class.
void bind(const std::string &attribute, const DataType dataType, const void *buffer, const int32_t stride=0)
Bind attribute buffer.
void bindMember(const std::string &attribute, const ObjectType &object, const MemberPointer member, const size_t index)
Bind attribute buffer.
void bindMember(const std::string &attribute, const ObjectType &object, const MemberPointer member)
Bind attribute buffer.
QueryRemove()
Default constructor.
Point attribute access data types.
Pointcloud class implementation details.
bool valid() const
Check if query is not null.
void close()
Finish query.