47 lines
929 B
Plaintext

// common externs
extern void truncate(in bit<32> length);
extern void resubmit<T>(in T x);
extern void recirculate<T>(in T x);
enum CloneType { I2E, E2I }
extern void clone(in CloneType type,
in bit<32> session);
// v1model pipeline elements
parser Parser<H, M>(
packet_in pkt,
out H hdr,
inout M meta,
inout standard_metadata_t std_meta
);
control VerifyChecksum<H, M>(
inout H hdr,
inout M meta
);
control Ingress<H, M>(
inout H hdr,
inout M meta,
inout standard_metadata_t std_meta
);
control Egress<H, M>(
inout H hdr,
inout M meta,
inout standard_metadata_t std_meta
);
control ComputeChecksum<H, M>(
inout H hdr,
inout M meta
);
control Deparser<H>(
packet_out b, in H hdr
);
// v1model switch
package V1Switch<H, M>(
Parser<H, M> p,
VerifyChecksum<H, M> vr,
Ingress<H, M> ig,
Egress<H, M> eg,
ComputeChecksum<H, M> ck,
Deparser<H> d
);