< prev index next >
src/share/vm/logging/logStream.inline.hpp
Print this page
*** 23,32 ****
--- 23,33 ----
*/
#ifndef SHARE_VM_LOGGING_LOGSTREAM_INLINE_HPP
#define SHARE_VM_LOGGING_LOGSTREAM_INLINE_HPP
#include "logging/log.hpp"
+ #include "logging/logHandle.hpp"
#include "logging/logStream.hpp"
#include "memory/resourceArea.hpp"
#include "utilities/ostream.hpp"
inline void LogStreamNoResourceMark::print(const char* fmt, ...) {
*** 73,82 ****
--- 74,92 ----
template <LogLevelType level, LogTagType T0, LogTagType T1, LogTagType T2, LogTagType T3, LogTagType T4, LogTagType GuardTag>
LogStream(const LogTargetImpl<level, T0, T1, T2, T3, T4, GuardTag>* type_carrier) :
_embedded_resource_mark(),
_stream(&LogImpl<T0, T1, T2, T3, T4, GuardTag>::template vwrite<level>) {}
+ // Constructor to support creation from a LogTargetHandle.
+ //
+ // LogTargt(Debug, gc) log;
+ // LogTargetHandle(log) handle;
+ // LogStream stream(handle);
+ LogStream(LogTargetHandle handle) :
+ _embedded_resource_mark(),
+ _stream(handle._vwrite) {}
+
// Override of outputStream::write.
void write(const char* s, size_t len) { _stream.write(s, len); }
};
// Support creation of a LogStream without having to provide a LogTarget pointer.
< prev index next >