21 #include <bsoncxx/document/view_or_value.hpp>
22 #include <bsoncxx/stdx/string_view.hpp>
23 #include <bsoncxx/types/bson_value/view.hpp>
24 #include <mongocxx/cursor.hpp>
25 #include <mongocxx/gridfs/downloader.hpp>
26 #include <mongocxx/gridfs/uploader.hpp>
27 #include <mongocxx/options/find.hpp>
28 #include <mongocxx/options/gridfs/bucket.hpp>
29 #include <mongocxx/options/gridfs/upload.hpp>
30 #include <mongocxx/result/gridfs/upload.hpp>
31 #include <mongocxx/stdx.hpp>
33 #include <mongocxx/config/prelude.hpp>
36 MONGOCXX_INLINE_NAMESPACE_BEGIN
99 explicit operator bool()
const noexcept;
128 uploader open_upload_stream(stdx::string_view filename,
161 stdx::string_view filename,
197 stdx::string_view filename,
233 stdx::string_view filename,
282 std::istream* source,
329 stdx::string_view filename,
330 std::istream* source,
379 stdx::string_view filename,
380 std::istream* source,
428 stdx::string_view filename,
429 std::istream* source,
528 std::ostream* destination);
624 stdx::string_view bucket_name()
const;
632 MONGOCXX_PRIVATE
void create_indexes_if_nonexistent(
const client_session* session);
636 stdx::string_view filename,
639 MONGOCXX_PRIVATE
void _upload_from_stream_with_id(
const client_session* session,
641 stdx::string_view filename,
642 std::istream* source,
648 MONGOCXX_PRIVATE
void _download_to_stream(
const client_session* session,
650 std::ostream* destination);
655 class MONGOCXX_PRIVATE impl;
657 MONGOCXX_PRIVATE impl& _get_impl();
658 MONGOCXX_PRIVATE
const impl& _get_impl()
const;
660 std::unique_ptr<impl> _impl;
664 MONGOCXX_INLINE_NAMESPACE_END
667 #include <mongocxx/config/postlude.hpp>