A base class for simulation timestamps regarding file copies. More...

#include <SimulationTimestampTypes.h>

Inheritance diagram for wrench::SimulationTimestampFileCopy:
wrench::SimulationTimestampPair wrench::SimulationTimestampType wrench::SimulationTimestampFileCopyCompletion wrench::SimulationTimestampFileCopyFailure wrench::SimulationTimestampFileCopyStart

Public Member Functions

std::shared_ptr< FileLocationgetDestination ()
 retrieves the location where the WorkflowFile will be copied More...
 
SimulationTimestampFileCopygetEndpoint () override
 Retrieve the matching endpoint, if any. More...
 
WorkflowFilegetFile ()
 retrieves the WorkflowFile being copied More...
 
std::shared_ptr< FileLocationgetSource ()
 retrieves the location from which the WorkflowFile is being copied More...
 
- Public Member Functions inherited from wrench::SimulationTimestampPair
 SimulationTimestampPair ()
 Constructor.
 
 SimulationTimestampPair (SimulationTimestampPair *endpoint)
 Constructor. More...
 
- Public Member Functions inherited from wrench::SimulationTimestampType
 SimulationTimestampType ()
 
More...
 
double getDate ()
 Retrieve the date recorded for this timestamp. More...
 

Protected Member Functions

 SimulationTimestampFileCopy (WorkflowFile *file, std::shared_ptr< FileLocation > src, std::shared_ptr< FileLocation > dst)
 Constructor. More...
 
void setEndpoints ()
 Sets the endpoint of the calling object (SimulationTimestampFileCopyFailure, SimulationTimestampFileCopyCompletion, SimulationTimestampFileCopyStart) with a SimulationTimestampFileCopyStart object.
 

Protected Attributes

std::shared_ptr< FileLocationdestination
 The location where the WorkflowFile was being copied to.
 
WorkflowFilefile
 The WorkflowFile that was being copied.
 
std::shared_ptr< FileLocationsource
 The location where the WorkflowFile was being copied from.
 
- Protected Attributes inherited from wrench::SimulationTimestampPair
SimulationTimestampPairendpoint = nullptr
 An optional associated "endpoint" simulation timestamp.
 

Static Protected Attributes

static std::unordered_multimap< File, SimulationTimestampFileCopy * > pending_file_copies
 the data structure that holds the ongoing file writes. More...
 

Detailed Description

A base class for simulation timestamps regarding file copies.

Constructor & Destructor Documentation

◆ SimulationTimestampFileCopy()

wrench::SimulationTimestampFileCopy::SimulationTimestampFileCopy ( WorkflowFile file,
std::shared_ptr< FileLocation src_location,
std::shared_ptr< FileLocation dst_location 
)
protected

Constructor.

Parameters
filethe WorkflowFile associated with this file copy
src_locationthe source location
dst_locationthe destination location

Member Function Documentation

◆ getDestination()

std::shared_ptr< FileLocation > wrench::SimulationTimestampFileCopy::getDestination ( )

retrieves the location where the WorkflowFile will be copied

Returns
the copy's destination location

◆ getEndpoint()

SimulationTimestampFileCopy * wrench::SimulationTimestampFileCopy::getEndpoint ( )
overridevirtual

Retrieve the matching endpoint, if any.

retrieves the corresponding SimulationTimestampFileCopy object

Returns
a pointer to the start or end SimulationTimestampFileCopy object

Reimplemented from wrench::SimulationTimestampPair.

◆ getFile()

WorkflowFile * wrench::SimulationTimestampFileCopy::getFile ( )

retrieves the WorkflowFile being copied

Returns
a pointer to the WorkflowFile associated with this copy

◆ getSource()

std::shared_ptr< FileLocation > wrench::SimulationTimestampFileCopy::getSource ( )

retrieves the location from which the WorkflowFile is being copied

Returns
the copy's source location

Member Data Documentation

◆ pending_file_copies

std::unordered_multimap< File, SimulationTimestampFileCopy * > wrench::SimulationTimestampFileCopy::pending_file_copies
staticprotected

the data structure that holds the ongoing file writes.

A static unordered multimap of SimulationTimestampFileCopyStart objects that have yet to be matched with Failure, Terminated or Completion timestamps.


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