Thrill  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
WriteLinesNode< ValueType > Class Template Referencefinal

Detailed Description

template<typename ValueType>
class thrill::api::WriteLinesNode< ValueType >

Definition at line 33 of file write_lines.hpp.

+ Inheritance diagram for WriteLinesNode< ValueType >:
+ Collaboration diagram for WriteLinesNode< ValueType >:

#include <write_lines.hpp>

Public Types

using Super = ActionNode
 
using ValueType_ = ValueType
 input type is the parent's output value type. More...
 
- Public Types inherited from DIABase
using DIABasePtr = tlx::CountingPtr< DIABase >
 

Public Member Functions

template<typename ParentDIA >
 WriteLinesNode (const ParentDIA &parent, const std::string &path_out, size_t target_file_size)
 
- Public Member Functions inherited from ActionNode
 ActionNode (Context &ctx, const char *label, const std::initializer_list< size_t > &parent_ids, const std::initializer_list< DIABasePtr > &parents)
 
std::vector< DIABase * > children () const final
 ActionNodes do not have children. More...
 
void DecConsumeCounter (size_t) final
 
void IncConsumeCounter (size_t) final
 
void PushData (bool) final
 ActionNodes do not push data, they only Execute. More...
 
void RemoveAllChildren () final
 ActionNodes do not have children. More...
 
void RemoveChild (DIABase *) final
 ActionNodes do not have children. More...
 
void RunPushData () final
 ActionNodes do not push data, they only Execute. More...
 
void SetConsumeCounter (size_t) final
 
- Public Member Functions inherited from DIABase
 DIABase (Context &ctx, const char *label, const std::initializer_list< size_t > &parent_ids, const std::initializer_list< DIABasePtr > &parents)
 The constructor for a DIABase. More...
 
 DIABase (Context &ctx, const char *label, std::vector< size_t > &&parent_ids, std::vector< DIABasePtr > &&parents)
 The constructor for a DIABase. More...
 
 DIABase (const DIABase &)=delete
 non-copyable: delete copy-constructor More...
 
 DIABase (DIABase &&)=default
 move-constructor: default More...
 
virtual ~DIABase ()
 Virtual destructor for a DIABase. More...
 
virtual size_t consume_counter () const
 Returns consume_counter_. More...
 
Contextcontext ()
 Returns the api::Context of this DIABase. More...
 
virtual bool ForwardDataOnly () const
 
const size_t & id () const
 return unique id() of DIANode subclass as stored by StatsNode More...
 
const char * label () const
 return label() of DIANode subclass as stored by StatsNode More...
 
mem::Managermem_manager ()
 Return the Context's memory manager. More...
 
DIABaseoperator= (const DIABase &)=delete
 non-copyable: delete assignment operator More...
 
DIABaseoperator= (DIABase &&)=default
 move-assignment operator: default More...
 
std::vector< size_t > parent_ids () const
 Returns the parents of this DIABase. More...
 
const std::vector< DIABasePtr > & parents () const
 Returns the parents of this DIABase. More...
 
void RemoveParent (DIABase *p)
 Remove a parent. More...
 
virtual bool RequireParentPushData (size_t) const
 
void RunScope ()
 
void set_mem_limit (const DIAMemUse &mem_limit)
 
void set_state (const DIAState &state)
 
DIAState state () const
 
virtual DIAMemUse PreOpMemUse ()
 Amount of RAM used by PreOp after StartPreOp() More...
 
virtual void StartPreOp (size_t)
 Virtual method for preparing start of PushData. More...
 
virtual bool OnPreOpFile (const data::File &, size_t)
 
virtual void StopPreOp (size_t)
 Virtual method for preparing end of PushData. More...
 
virtual DIAMemUse ExecuteMemUse ()
 Amount of RAM used by Execute() More...
 
virtual void Execute ()=0
 Virtual execution method. Triggers actual computation in sub-classes. More...
 
virtual DIAMemUse PushDataMemUse ()
 Amount of RAM used by PushData() More...
 
virtual void Dispose ()
 Virtual clear method. Triggers actual disposing in sub-classes. More...
 
- Public Member Functions inherited from ReferenceCounter
 ReferenceCounter () noexcept
 new objects have zero reference count More...
 
 ReferenceCounter (const ReferenceCounter &) noexcept
 coping still creates a new object with zero reference count More...
 
 ~ReferenceCounter ()
 
bool dec_reference () const noexcept
 Call whenever resetting (i.e. More...
 
void inc_reference () const noexcept
 Call whenever setting a pointer to the object. More...
 
ReferenceCounteroperator= (const ReferenceCounter &) noexcept
 assignment operator, leaves pointers unchanged More...
 
size_t reference_count () const noexcept
 Return the number of references to this object (for debugging) More...
 
bool unique () const noexcept
 Test if the ReferenceCounter is referenced by only one CountingPtr. More...
 

Public Attributes

size_t current_buffer_size_ = 0
 Current buffer size. More...
 
size_t current_file_size_ = 0
 Current file size in bytes. More...
 
size_t max_buffer_size_
 Maximum buffer size. More...
 
size_t out_serial_ = 1
 File serial number for this worker. More...
 
size_t stats_total_bytes_ = 0
 
size_t stats_total_elements_ = 0
 
size_t stats_total_writes_ = 0
 
vfs::WriteStreamPtr stream_
 File to wrtie to. More...
 
size_t target_file_size_
 Targetl file size in bytes. More...
 
common::StatsTimerStopped timer
 
net::BufferBuilder write_buffer_
 Write buffer. More...
 
- Public Attributes inherited from DIABase
common::JsonLogger logger_
 

Static Private Attributes

static constexpr bool debug = false
 

Additional Inherited Members

- Static Public Attributes inherited from DIABase
static constexpr size_t kNeverConsume = static_cast<size_t>(-1)
 Never full consume. More...
 
- Protected Attributes inherited from DIABase
Contextcontext_
 associated Context More...
 
const size_t id_
 DIA serial id. More...
 
const char *const label_
 DOp node static label. More...
 
DIAState state_ = DIAState::NEW
 State of the DIANode. State is NEW on creation. More...
 
std::vector< DIABasePtrparents_
 Parents of this DIABase. More...
 
DIAMemUse mem_limit_ = 0
 
size_t consume_counter_ = 1
 

Member Typedef Documentation

using Super = ActionNode

Definition at line 38 of file write_lines.hpp.

using ValueType_ = ValueType

input type is the parent's output value type.

Definition at line 42 of file write_lines.hpp.

Constructor & Destructor Documentation

WriteLinesNode ( const ParentDIA &  parent,
const std::string &  path_out,
size_t  target_file_size 
)
inline

Definition at line 45 of file write_lines.hpp.

Member Data Documentation

size_t current_buffer_size_ = 0

Current buffer size.

Definition at line 164 of file write_lines.hpp.

size_t current_file_size_ = 0

Current file size in bytes.

Definition at line 149 of file write_lines.hpp.

constexpr bool debug = false
staticprivate

Definition at line 35 of file write_lines.hpp.

size_t max_buffer_size_

Maximum buffer size.

Definition at line 161 of file write_lines.hpp.

size_t out_serial_ = 1

File serial number for this worker.

Definition at line 152 of file write_lines.hpp.

size_t stats_total_bytes_ = 0

Definition at line 171 of file write_lines.hpp.

size_t stats_total_elements_ = 0

Definition at line 172 of file write_lines.hpp.

size_t stats_total_writes_ = 0

Definition at line 173 of file write_lines.hpp.

File to wrtie to.

Definition at line 155 of file write_lines.hpp.

size_t target_file_size_

Targetl file size in bytes.

Definition at line 167 of file write_lines.hpp.

Definition at line 169 of file write_lines.hpp.

net::BufferBuilder write_buffer_

Write buffer.

Definition at line 158 of file write_lines.hpp.


The documentation for this class was generated from the following file: