CYCLUS
|
The digest type for SHA1s.
This class is a hack around a language deficiency in C++. You cannot pass around an array (unsinged int[5]) between function calls. You can only pass pointers, which would involve lost of new/free and heap shenanigans that are not needed for a dumb container. Therefore Sha1::Digest() cannot return what would be most natural. The second most natural thing would be a std::array<unsigned int, 5>. However, std::array is a C++11 feature and we are not yet ready to go down that road.
To pass an array into and out of a function it has to be inside of struct or a class. I chose a class here since there are many member functions.
The reason why this is public is that it needs to be directly writable from buffers coming from HDF5. In the future, this really should just be a std::array.
Definition at line 646 of file query_backend.h.
#include <query_backend.h>
Public Member Functions | |
template<typename T > | |
std::vector< T > | cast () const |
bool | operator!= (const cyclus::Digest &rhs) const |
bool | operator< (const cyclus::Digest &rhs) const |
std::ostream & | operator<< (std::ostream &out) const |
bool | operator<= (const cyclus::Digest &rhs) const |
bool | operator== (const cyclus::Digest &rhs) const |
bool | operator> (const cyclus::Digest &rhs) const |
bool | operator>= (const cyclus::Digest &rhs) const |
Public Attributes | |
unsigned int | val [CYCLUS_SHA1_NINT] |
Casts the value of this digest to a vector of the templated type.
Definition at line 652 of file query_backend.h.
|
inline |
Definition at line 702 of file query_backend.h.
|
inline |
Definition at line 665 of file query_backend.h.
|
inline |
Definition at line 660 of file query_backend.h.
|
inline |
Definition at line 683 of file query_backend.h.
|
inline |
Definition at line 691 of file query_backend.h.
|
inline |
Definition at line 679 of file query_backend.h.
|
inline |
Definition at line 687 of file query_backend.h.
unsigned int cyclus::Digest::val[CYCLUS_SHA1_NINT] |
Definition at line 648 of file query_backend.h.