// Copyright (c) 2009 The Chromium Embedded Framework Authors. All rights // reserved. Use of this source code is governed by a BSD-style license that // can be found in the LICENSE file. // // --------------------------------------------------------------------------- // // A portion of this file was generated by the CEF translator tool. When // making changes by hand only do so within the body of existing function // implementations. See the translator.README.txt file in the tools directory // for more information. // #include "libcef_dll/cpptoc/stream_writer_cpptoc.h" #include "libcef_dll/ctocpp/write_handler_ctocpp.h" // GLOBAL FUNCTIONS - Body may be edited by hand. CEF_EXPORT cef_stream_writer_t* cef_stream_writer_create_for_file( const wchar_t* fileName) { DCHECK(fileName); if(!fileName) return NULL; std::wstring fileNameStr = fileName; CefRefPtr impl = CefStreamWriter::CreateForFile(fileName); if(impl.get()) return CefStreamWriterCppToC::Wrap(impl); return NULL; } CEF_EXPORT cef_stream_writer_t* cef_stream_writer_create_for_handler( cef_write_handler_t* handler) { DCHECK(handler); if(!handler) return NULL; CefRefPtr impl = CefStreamWriter::CreateForHandler(CefWriteHandlerCToCpp::Wrap(handler)); if(impl.get()) return CefStreamWriterCppToC::Wrap(impl); return NULL; } // MEMBER FUNCTIONS - Body may be edited by hand. size_t CEF_CALLBACK stream_writer_write(struct _cef_stream_writer_t* self, const void* ptr, size_t size, size_t n) { DCHECK(self); if(!self) return 0; return CefStreamWriterCppToC::Get(self)->Write(ptr, size, n); } int CEF_CALLBACK stream_writer_seek(struct _cef_stream_writer_t* self, long offset, int whence) { DCHECK(self); if(!self) return 0; return CefStreamWriterCppToC::Get(self)->Seek(offset, whence); } long CEF_CALLBACK stream_writer_tell(struct _cef_stream_writer_t* self) { DCHECK(self); if(!self) return 0; return CefStreamWriterCppToC::Get(self)->Tell(); } int CEF_CALLBACK stream_writer_flush(struct _cef_stream_writer_t* self) { DCHECK(self); if(!self) return 0; return CefStreamWriterCppToC::Get(self)->Flush(); } // CONSTRUCTOR - Do not edit by hand. CefStreamWriterCppToC::CefStreamWriterCppToC(CefStreamWriter* cls) : CefCppToC( cls) { struct_.struct_.write = stream_writer_write; struct_.struct_.seek = stream_writer_seek; struct_.struct_.tell = stream_writer_tell; struct_.struct_.flush = stream_writer_flush; } #ifdef _DEBUG long CefCppToC::DebugObjCt = 0; #endif