271a272,274
> bool functionalReadBuffers(PacketPtr&);
> uint32_t functionalWriteBuffers(PacketPtr&);
>
989a993,1025
> # Function for functional reads from messages buffered in the controller
> code('''
> bool
> $c_ident::functionalReadBuffers(PacketPtr& pkt)
> {
> ''')
> for var in self.objects:
> vtype = var.type
> if vtype.isBuffer:
> vid = "m_%s_ptr" % var.c_ident
> code('if ($vid->functionalRead(pkt)) { return true; }')
> code('''
> return false;
> }
> ''')
>
> # Function for functional writes to messages buffered in the controller
> code('''
> uint32_t
> $c_ident::functionalWriteBuffers(PacketPtr& pkt)
> {
> uint32_t num_functional_writes = 0;
> ''')
> for var in self.objects:
> vtype = var.type
> if vtype.isBuffer:
> vid = "m_%s_ptr" % var.c_ident
> code('num_functional_writes += $vid->functionalWrite(pkt);')
> code('''
> return num_functional_writes;
> }
> ''')
>