 |
Cerata
A library to generate structural hardware designs
|
21 #include "cerata/type.h"
29 static std::shared_ptr<Type>
valid();
31 static std::shared_ptr<Type>
ready();
35 const std::string &element_name,
36 const std::shared_ptr<Type> &element_type,
37 const std::vector<std::shared_ptr<Field>> &control);
58 std::shared_ptr<Stream>
stream(
const std::string &name,
59 const std::string &element_name,
60 const std::shared_ptr<Type> &element_type,
61 const std::vector<std::shared_ptr<Field>> &control =
71 std::shared_ptr<Stream>
stream(
const std::string &element_name,
const std::shared_ptr<Type> &element_type);
78 std::shared_ptr<Stream>
stream(
const std::shared_ptr<Type> &element_type);
std::vector< std::shared_ptr< Field > > fields_
The fields of this Record.
std::shared_ptr< Field > field(const std::string &name, const std::shared_ptr< Type > &type, bool reverse, bool sep)
Create a new RecordField, and return a shared pointer to it.
static std::shared_ptr< Type > ready()
Return a 'ready' bit type.
Stream & SetElementType(std::shared_ptr< Type > type)
Set the element type of this stream.
A Record type containing zero or more fields.
Contains every Cerata class, function, etc...
std::string name() const
Return the name of the object.
Field * data()
Return the stream data field.
static std::shared_ptr< Type > valid()
Return a 'valid' bit type.
std::shared_ptr< Stream > stream(const std::string &name, const std::string &element_name, const std::shared_ptr< Type > &element_type, const std::vector< std::shared_ptr< Field >> &control)
Construct a new Stream type and return a shared pointer to it.
Stream(const std::string &name, const std::string &element_name, const std::shared_ptr< Type > &element_type, const std::vector< std::shared_ptr< Field >> &control)
Stream constructor.