diff --git a/include/engine/dataman/DataManReader.h b/include/engine/dataman/DataManReader.h index 1509b6b97986bbedcd3c0a2fe091096b2677c4de..e296687746d012dbe90efc066d61681690b27fff 100644 --- a/include/engine/dataman/DataManReader.h +++ b/include/engine/dataman/DataManReader.h @@ -79,6 +79,7 @@ private: capsule::STLVector m_Buffer; ///< heap capsule, contains data and metadata buffers format::BP1Writer m_BP1Writer; ///< format object will provide the required BP functionality to be applied on m_Buffer and m_Transports + std::function<void( const void*, std::string, std::string, std::string, Dims )> m_CallBack; ///< call back function void Init( ); ///< calls InitCapsules and InitTransports based on Method, called from constructor diff --git a/include/engine/dataman/DataManWriter.h b/include/engine/dataman/DataManWriter.h index f903a6475747653f8c38f4662d6c893810086239..51247e7d6620f87430911519d0ba18a1765165d4 100644 --- a/include/engine/dataman/DataManWriter.h +++ b/include/engine/dataman/DataManWriter.h @@ -114,19 +114,15 @@ private: //This part will go away, this is just to monitor variables per rank -// put(void *p_data, -// string p_doid, -// string p_var, -// string p_dtype, -// vector<uint64_t> p_putshape, -// vector<uint64_t> p_varshape, -// vector<uint64_t> p_offset, -// uint64_t p_timestep, -// int p_tolerance, -// int p_priority -// ){ - - m_Man.put( values, "", variable.m_Name, GetType<T>(), variable.m_Dimensions, variable.m_GlobalDimensions, variable.m_GlobalOffsets, 0); + json jmsg; + jmsg["doid"] = m_Name; + jmsg["var"] = variable.m_Name; + jmsg["dtype"] = GetType<T>(); + jmsg["putshape"] = variable.m_Dimensions; + jmsg["varshape"] = variable.m_GlobalDimensions; + jmsg["offset"] = variable.m_GlobalOffsets; + jmsg["timestep"] = 0; + m_Man.put(values, jmsg); std::cout << "I am hooked to the DataMan library\n"; MPI_Barrier( m_MPIComm ); diff --git a/src/engine/dataman/DataManReader.cpp b/src/engine/dataman/DataManReader.cpp index 6286cc4fb081de3e7543f743d83e9ff6bb1ba33c..a2e32889de2731839dc16c330c75086f4a8e3eee 100644 --- a/src/engine/dataman/DataManReader.cpp +++ b/src/engine/dataman/DataManReader.cpp @@ -33,7 +33,7 @@ DataManReader::DataManReader( ADIOS& adios, const std::string name, const std::s DataManReader::~DataManReader( ) { } -void DataManWriter::SetCallBack( std::function<void( const void*, std::string, std::string, std::string, Dims )> callback ) +void DataManReader::SetCallBack( std::function<void( const void*, std::string, std::string, std::string, Dims )> callback ) { m_CallBack = callback; } diff --git a/src/engine/dataman/DataManWriter.cpp b/src/engine/dataman/DataManWriter.cpp index 0cb73e1acadb394fe91def22ade9a21ca2ac335f..4e0b70d9f32e32c2ad027e71d1c25c685751fa6b 100644 --- a/src/engine/dataman/DataManWriter.cpp +++ b/src/engine/dataman/DataManWriter.cpp @@ -202,7 +202,15 @@ void DataManWriter::Init( ) lf_AssignInt( "remote_port", remote_port ); lf_AssignInt( "num_channels", num_channels ); - m_Man.add_stream(local_ip, remote_ip, local_port, remote_port, num_channels, method); + json jmsg; + jmsg["method"] = method; + jmsg["local_ip"] = local_ip; + jmsg["remote_ip"] = remote_ip; + jmsg["local_port"] = local_port; + jmsg["remote_port"] = remote_port; + jmsg["num_channels"] = num_channels; + + m_Man.add_stream(jmsg); } } else