enum IfacePurpose { Data = 1, Control, Clock, Reset, Wishbone };
enum IfaceDirection { Input = 1, Output = 2, InOut = 3 };
enum IfaceVHDLContext { Entity = 1, Component = 2, Architecture = 3 }; // NB : 3 is when creating an instance of the block that owns this iface
enum IfacePurpose { Data = 1, Control, Clock, Reset, Wishbone };
enum IfaceDirection { Input = 1, Output = 2, InOut = 3 };
enum IfaceVHDLContext { Entity = 1, Component = 2, Architecture = 3 }; // NB : 3 is when creating an instance of the block that owns this iface