diff --git a/tiledb/CMakeLists.txt b/tiledb/CMakeLists.txt index 07acc6d27cf..4f45f91ffe9 100644 --- a/tiledb/CMakeLists.txt +++ b/tiledb/CMakeLists.txt @@ -92,6 +92,8 @@ if (TILEDB_CPP_API) ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/as_built_experimental.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/attribute.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/attribute_experimental.h + ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/channel_operation.h + ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/channel_operator.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/config.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/consolidation_plan_experimental.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/context.h @@ -112,6 +114,7 @@ if (TILEDB_CPP_API) ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/object.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/object_iter.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/query.h + ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/query_channel.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/query_condition_experimental.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/query_condition.h ${TILEDB_CORE_INCLUDE_DIR}/tiledb/sm/cpp_api/query_experimental.h diff --git a/tiledb/sm/cpp_api/channel_operation.h b/tiledb/sm/cpp_api/channel_operation.h index 51153faed8b..31333d92a18 100644 --- a/tiledb/sm/cpp_api/channel_operation.h +++ b/tiledb/sm/cpp_api/channel_operation.h @@ -89,7 +89,9 @@ class ChannelOperation { * @param query The TileDB query * @param input_field The attribute name the aggregate operation will run on */ - template Op> + template < + class Op, + std::enable_if_t, bool> = true> static ChannelOperation create( const Query& query, const std::string& input_field) { const Context& ctx = query.ctx(); diff --git a/tiledb/sm/cpp_api/query_experimental.h b/tiledb/sm/cpp_api/query_experimental.h index 92906ab2179..d70adda7738 100644 --- a/tiledb/sm/cpp_api/query_experimental.h +++ b/tiledb/sm/cpp_api/query_experimental.h @@ -405,7 +405,9 @@ class QueryExperimental { * @param input_field The attribute name as input for the aggregate * @return The aggregate operation */ - template Op> + template < + class Op, + std::enable_if_t, bool> = true> static ChannelOperation create_unary_aggregate( const Query& query, const std::string& input_field) { return ChannelOperation::create(query, input_field);