21 #include <bsoncxx/document/view_or_value.hpp>
22 #include <bsoncxx/stdx/optional.hpp>
23 #include <bsoncxx/stdx/string_view.hpp>
24 #include <bsoncxx/types/bson_value/view.hpp>
25 #include <mongocxx/cursor.hpp>
26 #include <mongocxx/gridfs/downloader.hpp>
27 #include <mongocxx/gridfs/uploader.hpp>
28 #include <mongocxx/options/find.hpp>
29 #include <mongocxx/options/gridfs/bucket.hpp>
30 #include <mongocxx/options/gridfs/upload.hpp>
31 #include <mongocxx/result/gridfs/upload.hpp>
32 #include <mongocxx/stdx.hpp>
34 #include <mongocxx/config/prelude.hpp>
37 MONGOCXX_INLINE_NAMESPACE_BEGIN
100 explicit operator bool()
const noexcept;
129 uploader open_upload_stream(stdx::string_view filename,
162 stdx::string_view filename,
198 stdx::string_view filename,
234 stdx::string_view filename,
283 std::istream* source,
330 stdx::string_view filename,
331 std::istream* source,
380 stdx::string_view filename,
381 std::istream* source,
429 stdx::string_view filename,
430 std::istream* source,
504 std::ostream* destination,
533 std::ostream* destination);
536 std::ostream* destination,
634 stdx::string_view bucket_name()
const;
642 MONGOCXX_PRIVATE
void create_indexes_if_nonexistent(
const client_session* session);
646 stdx::string_view filename,
649 MONGOCXX_PRIVATE
void _upload_from_stream_with_id(
const client_session* session,
651 stdx::string_view filename,
652 std::istream* source,
657 stdx::optional<std::size_t> start,
658 stdx::optional<std::size_t> end);
660 MONGOCXX_PRIVATE
void _download_to_stream(
const client_session* session,
662 std::ostream* destination,
663 stdx::optional<std::size_t> start,
664 stdx::optional<std::size_t> end);
669 class MONGOCXX_PRIVATE impl;
671 MONGOCXX_PRIVATE impl& _get_impl();
672 MONGOCXX_PRIVATE
const impl& _get_impl()
const;
674 std::unique_ptr<impl> _impl;
678 MONGOCXX_INLINE_NAMESPACE_END
681 #include <mongocxx/config/postlude.hpp>