OpenAPI: Export images written and images with write error
This commit is contained in:
@@ -1114,5 +1114,9 @@ org::openapitools::server::model::Image_pusher_status Convert(const ImagePusherS
|
||||
break;
|
||||
}
|
||||
ret.setPusherType(tmp);
|
||||
if (input.images_written)
|
||||
ret.setImagesWritten(input.images_written.value());
|
||||
if (input.images_write_error)
|
||||
ret.setImagesWriteError(input.images_write_error.value());
|
||||
return ret;
|
||||
}
|
||||
@@ -22,6 +22,10 @@ namespace org::openapitools::server::model
|
||||
Image_pusher_status::Image_pusher_status()
|
||||
{
|
||||
m_Connected_writers = 0L;
|
||||
m_Images_written = 0L;
|
||||
m_Images_writtenIsSet = false;
|
||||
m_Images_write_error = 0L;
|
||||
m_Images_write_errorIsSet = false;
|
||||
|
||||
}
|
||||
|
||||
@@ -65,7 +69,7 @@ bool Image_pusher_status::validate(std::stringstream& msg, const std::string& pa
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
@@ -81,8 +85,14 @@ bool Image_pusher_status::operator==(const Image_pusher_status& rhs) const
|
||||
&&
|
||||
|
||||
(getConnectedWriters() == rhs.getConnectedWriters())
|
||||
&&
|
||||
|
||||
|
||||
((!imagesWrittenIsSet() && !rhs.imagesWrittenIsSet()) || (imagesWrittenIsSet() && rhs.imagesWrittenIsSet() && getImagesWritten() == rhs.getImagesWritten())) &&
|
||||
|
||||
|
||||
((!imagesWriteErrorIsSet() && !rhs.imagesWriteErrorIsSet()) || (imagesWriteErrorIsSet() && rhs.imagesWriteErrorIsSet() && getImagesWriteError() == rhs.getImagesWriteError()))
|
||||
|
||||
;
|
||||
}
|
||||
|
||||
@@ -97,6 +107,10 @@ void to_json(nlohmann::json& j, const Image_pusher_status& o)
|
||||
j["pusher_type"] = o.m_Pusher_type;
|
||||
j["addr"] = o.m_Addr;
|
||||
j["connected_writers"] = o.m_Connected_writers;
|
||||
if(o.imagesWrittenIsSet())
|
||||
j["images_written"] = o.m_Images_written;
|
||||
if(o.imagesWriteErrorIsSet())
|
||||
j["images_write_error"] = o.m_Images_write_error;
|
||||
|
||||
}
|
||||
|
||||
@@ -105,6 +119,16 @@ void from_json(const nlohmann::json& j, Image_pusher_status& o)
|
||||
j.at("pusher_type").get_to(o.m_Pusher_type);
|
||||
j.at("addr").get_to(o.m_Addr);
|
||||
j.at("connected_writers").get_to(o.m_Connected_writers);
|
||||
if(j.find("images_written") != j.end())
|
||||
{
|
||||
j.at("images_written").get_to(o.m_Images_written);
|
||||
o.m_Images_writtenIsSet = true;
|
||||
}
|
||||
if(j.find("images_write_error") != j.end())
|
||||
{
|
||||
j.at("images_write_error").get_to(o.m_Images_write_error);
|
||||
o.m_Images_write_errorIsSet = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -132,6 +156,40 @@ void Image_pusher_status::setConnectedWriters(int64_t const value)
|
||||
{
|
||||
m_Connected_writers = value;
|
||||
}
|
||||
int64_t Image_pusher_status::getImagesWritten() const
|
||||
{
|
||||
return m_Images_written;
|
||||
}
|
||||
void Image_pusher_status::setImagesWritten(int64_t const value)
|
||||
{
|
||||
m_Images_written = value;
|
||||
m_Images_writtenIsSet = true;
|
||||
}
|
||||
bool Image_pusher_status::imagesWrittenIsSet() const
|
||||
{
|
||||
return m_Images_writtenIsSet;
|
||||
}
|
||||
void Image_pusher_status::unsetImages_written()
|
||||
{
|
||||
m_Images_writtenIsSet = false;
|
||||
}
|
||||
int64_t Image_pusher_status::getImagesWriteError() const
|
||||
{
|
||||
return m_Images_write_error;
|
||||
}
|
||||
void Image_pusher_status::setImagesWriteError(int64_t const value)
|
||||
{
|
||||
m_Images_write_error = value;
|
||||
m_Images_write_errorIsSet = true;
|
||||
}
|
||||
bool Image_pusher_status::imagesWriteErrorIsSet() const
|
||||
{
|
||||
return m_Images_write_errorIsSet;
|
||||
}
|
||||
void Image_pusher_status::unsetImages_write_error()
|
||||
{
|
||||
m_Images_write_errorIsSet = false;
|
||||
}
|
||||
|
||||
|
||||
} // namespace org::openapitools::server::model
|
||||
|
||||
@@ -75,6 +75,20 @@ public:
|
||||
/// </summary>
|
||||
int64_t getConnectedWriters() const;
|
||||
void setConnectedWriters(int64_t const value);
|
||||
/// <summary>
|
||||
/// Number of images written to the image socket. This number is updated live during operation for TCP/IP image socket and direct HDF5 writer. It is updated at the end of experiment for ZeroMQ image socket.
|
||||
/// </summary>
|
||||
int64_t getImagesWritten() const;
|
||||
void setImagesWritten(int64_t const value);
|
||||
bool imagesWrittenIsSet() const;
|
||||
void unsetImages_written();
|
||||
/// <summary>
|
||||
/// Number of images that could not be written to the image socket. This number is updated live during operation for TCP/IP image socket. No other socket use it.
|
||||
/// </summary>
|
||||
int64_t getImagesWriteError() const;
|
||||
void setImagesWriteError(int64_t const value);
|
||||
bool imagesWriteErrorIsSet() const;
|
||||
void unsetImages_write_error();
|
||||
|
||||
friend void to_json(nlohmann::json& j, const Image_pusher_status& o);
|
||||
friend void from_json(const nlohmann::json& j, Image_pusher_status& o);
|
||||
@@ -85,6 +99,10 @@ protected:
|
||||
|
||||
int64_t m_Connected_writers;
|
||||
|
||||
int64_t m_Images_written;
|
||||
bool m_Images_writtenIsSet;
|
||||
int64_t m_Images_write_error;
|
||||
bool m_Images_write_errorIsSet;
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -1372,6 +1372,20 @@ components:
|
||||
Number of connected writers
|
||||
For ZeroMQ image socket: number is constant
|
||||
For TCP/IP image socket: number is updated live during operation
|
||||
images_written:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
Number of images written to the image socket.
|
||||
This number is updated live during operation for TCP/IP image socket and direct HDF5 writer.
|
||||
It is updated at the end of experiment for ZeroMQ image socket.
|
||||
images_write_error:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
Number of images that could not be written to the image socket.
|
||||
This number is updated live during operation for TCP/IP image socket.
|
||||
No other socket use it.
|
||||
plot:
|
||||
type: object
|
||||
required:
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -9,6 +9,8 @@ Name | Type | Description | Notes
|
||||
**pusher_type** | [**ImagePusherType**](ImagePusherType.md) | | [default to ImagePusherType.NONE]
|
||||
**addr** | **List[str]** | List of addresses of image pushers. For HDF5 socket - no addresses will be returned. For ZeroMQ - list of addresses for each socket will be provided. For TCP/IP - single address to connect all writers will be provided. |
|
||||
**connected_writers** | **int** | Number of connected writers For ZeroMQ image socket: number is constant For TCP/IP image socket: number is updated live during operation |
|
||||
**images_written** | **int** | Number of images written to the image socket. This number is updated live during operation for TCP/IP image socket and direct HDF5 writer. It is updated at the end of experiment for ZeroMQ image socket. | [optional]
|
||||
**images_write_error** | **int** | Number of images that could not be written to the image socket. This number is updated live during operation for TCP/IP image socket. No other socket use it. | [optional]
|
||||
|
||||
## Example
|
||||
|
||||
|
||||
@@ -26,5 +26,19 @@ export type image_pusher_status = {
|
||||
*
|
||||
*/
|
||||
connected_writers: number;
|
||||
/**
|
||||
* Number of images written to the image socket.
|
||||
* This number is updated live during operation for TCP/IP image socket and direct HDF5 writer.
|
||||
* It is updated at the end of experiment for ZeroMQ image socket.
|
||||
*
|
||||
*/
|
||||
images_written?: number;
|
||||
/**
|
||||
* Number of images that could not be written to the image socket.
|
||||
* This number is updated live during operation for TCP/IP image socket.
|
||||
* No other socket use it.
|
||||
*
|
||||
*/
|
||||
images_write_error?: number;
|
||||
};
|
||||
|
||||
|
||||
@@ -17,6 +17,8 @@ struct ImagePusherStatus {
|
||||
ImagePusherType pusher_type = ImagePusherType::None;
|
||||
std::vector<std::string> address = {};
|
||||
size_t connected_writers = 0;
|
||||
std::optional<size_t> images_written = 0;
|
||||
std::optional<size_t> images_write_error = 0;
|
||||
};
|
||||
|
||||
struct ImagePusherQueueElement {
|
||||
@@ -43,11 +45,18 @@ public:
|
||||
|
||||
virtual std::vector<std::string> GetAddress() const { return {}; }
|
||||
virtual std::optional<uint64_t> GetImagesWritten() const { return std::nullopt; }
|
||||
virtual std::optional<uint64_t> GetImagesWriteError() const { return std::nullopt; }
|
||||
virtual size_t GetConnectedWriters() const { return 0; };
|
||||
virtual ImagePusherType GetType() const = 0;
|
||||
|
||||
ImagePusherStatus GetStatus() const {
|
||||
return ImagePusherStatus{GetType(), GetAddress(), GetConnectedWriters()};
|
||||
return ImagePusherStatus{
|
||||
GetType(),
|
||||
GetAddress(),
|
||||
GetConnectedWriters(),
|
||||
GetImagesWritten(),
|
||||
GetImagesWriteError()
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -1131,3 +1131,7 @@ std::string TCPStreamPusher::PrintSetup() const {
|
||||
std::optional<uint64_t> TCPStreamPusher::GetImagesWritten() const {
|
||||
return total_data_acked_ok.load(std::memory_order_relaxed);
|
||||
}
|
||||
|
||||
std::optional<uint64_t> TCPStreamPusher::GetImagesWriteError() const {
|
||||
return total_data_acked_bad.load(std::memory_order_relaxed);
|
||||
}
|
||||
|
||||
@@ -184,5 +184,6 @@ public:
|
||||
std::string PrintSetup() const override;
|
||||
|
||||
std::optional<uint64_t> GetImagesWritten() const override;
|
||||
std::optional<uint64_t> GetImagesWriteError() const override;
|
||||
ImagePusherType GetType() const override { return ImagePusherType::TCP; }
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user