1*f5210bb6SBen Tyner #include "user_header.hpp" 2*f5210bb6SBen Tyner 3*f5210bb6SBen Tyner namespace attn 4*f5210bb6SBen Tyner { 5*f5210bb6SBen Tyner namespace pel 6*f5210bb6SBen Tyner { 7*f5210bb6SBen Tyner UserHeader(Stream & pel)8*f5210bb6SBen TynerUserHeader::UserHeader(Stream& pel) 9*f5210bb6SBen Tyner { 10*f5210bb6SBen Tyner unflatten(pel); 11*f5210bb6SBen Tyner } 12*f5210bb6SBen Tyner flatten(Stream & stream) const13*f5210bb6SBen Tynervoid UserHeader::flatten(Stream& stream) const 14*f5210bb6SBen Tyner { 15*f5210bb6SBen Tyner stream << _header << _eventSubsystem << _eventScope << _eventSeverity 16*f5210bb6SBen Tyner << _eventType << _reserved4Byte1 << _problemDomain << _problemVector 17*f5210bb6SBen Tyner << _actionFlags << _reserved4Byte2; 18*f5210bb6SBen Tyner } 19*f5210bb6SBen Tyner unflatten(Stream & stream)20*f5210bb6SBen Tynervoid UserHeader::unflatten(Stream& stream) 21*f5210bb6SBen Tyner { 22*f5210bb6SBen Tyner stream >> _header >> _eventSubsystem >> _eventScope >> _eventSeverity >> 23*f5210bb6SBen Tyner _eventType >> _reserved4Byte1 >> _problemDomain >> _problemVector >> 24*f5210bb6SBen Tyner _actionFlags >> _reserved4Byte2; 25*f5210bb6SBen Tyner } 26*f5210bb6SBen Tyner setSubsystem(uint8_t subsystem)27*f5210bb6SBen Tynervoid UserHeader::setSubsystem(uint8_t subsystem) 28*f5210bb6SBen Tyner { 29*f5210bb6SBen Tyner _eventSubsystem = subsystem; 30*f5210bb6SBen Tyner } 31*f5210bb6SBen Tyner setSeverity(uint8_t severity)32*f5210bb6SBen Tynervoid UserHeader::setSeverity(uint8_t severity) 33*f5210bb6SBen Tyner { 34*f5210bb6SBen Tyner _eventSeverity = severity; 35*f5210bb6SBen Tyner } 36*f5210bb6SBen Tyner setType(uint8_t type)37*f5210bb6SBen Tynervoid UserHeader::setType(uint8_t type) 38*f5210bb6SBen Tyner { 39*f5210bb6SBen Tyner _eventType = type; 40*f5210bb6SBen Tyner } 41*f5210bb6SBen Tyner setAction(uint16_t action)42*f5210bb6SBen Tynervoid UserHeader::setAction(uint16_t action) 43*f5210bb6SBen Tyner { 44*f5210bb6SBen Tyner _actionFlags = action; 45*f5210bb6SBen Tyner } 46*f5210bb6SBen Tyner 47*f5210bb6SBen Tyner } // namespace pel 48*f5210bb6SBen Tyner } // namespace attn 49