BOSS 7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
OutOfBoundsIssue.cxx
Go to the documentation of this file.
1//Dear emacs, this is -*- c++ -*-
2
3/**
4 * @file OutOfBoundsIssue.cxx
5 * @author <a href="mailto:[email protected]">Andre DOS ANJOS</a>
6 * $Author: zhangy $
7 * $Revision: 1.1.1.1 $
8 * $Date: 2009/06/19 07:35:41 $
9 *
10 * Implements the out-of-bounds exception.
11 */
12
13#include "eformat/OutOfBoundsIssue.h"
14
15/**
16 * Strings to identify keys in ERS
17 */
18static const char* BUFFER_SIZE_KEY = "Size in bytes of the buffer";
19static const char* REQUESTED_BYTE_KEY = "Requested byte to access";
20
22 ers::severity_t severity,
23 size_t size, size_t pos)
24 : eformat::Issue(context,severity)
25{
26 set_value(BUFFER_SIZE_KEY, size);
27 set_value(REQUESTED_BYTE_KEY, pos);
28 finish_setup("Requested buffer position is out of bounds");
29}
30
32{
33 return get_int_value(BUFFER_SIZE_KEY);
34}
35
37{
38 return get_int_value(REQUESTED_BYTE_KEY);
39}
40
41
42
43
OutOfBoundsIssue(const ers::Context &context, ers::severity_t severity, size_t size, size_t pos)
Source context for Issue.
void set_value(const std::string &key, uint8_t value)
Sets a value 8 bit unsigned.
void finish_setup(const std::string &message)
Finishes the setup of the Issue.
enum ers::_severity_t severity_t