I use this function quite a lot, actually. Thanks Dave! But just a note that it doesn't set mask parameters correctly if the top-level mask has changed (obviously, because it can't map the parameters correctly). So it's not a one-stop fix-all solution in every case, but it sure saves a lot of time in most cases.
Jason Manley CBF Manager SKA-SA Cell: +27 82 662 7726 Work: +27 21 506 7300 On 03 Feb 2014, at 21:31, Jack Hickish <[email protected]> wrote: > Might also be worth saying that you can also pass arguments to the > underlying search function, for example, to update all software > registers (which is particularly useful of late): > > update_casper_blocks(bdroot, 'Tag', 'sw_reg') > > Awesome! > > On 3 February 2014 19:22, David MacMahon <[email protected]> wrote: >> >> On Feb 3, 2014, at 12:14 AM, Jason Manley wrote: >> >>> If you've updated from SKA-SA, you'll need to delete any existing X-engines >>> in your design and drag a new block in from the library and set your >>> parameters again. >> >> This kind of deleting and re-drawing is why the "update_casper_blocks" >> function was created. To update all the CASPER blocks in the current block >> diagram, run this command at the matlab command prompt: >> >> update_casper_blocks(bdroot) >> >> If you want to update just a single CASPER block, you can select that block >> and run this command at the matlab prompt: >> >> update_casper_block(gcb) >> >> Note that the first command is plural (ends with 's') and the second command >> is singular (does not end with 's'). The "bdroot" and "gcb" arguments are >> actually simulink commands that return the root of the current block diagram >> (bdroot == block diagram root) and the current block (gcb == get current >> block), respectively. >> >> These auto-update commands generally work, but I have seen some strange >> cases where they fail. Sometimes this is due to incompatible defaults for >> new parameters of the new blocks, but other times it is due to unexpected >> simulink behavior that I don't understand. In any case, it's worth a try as >> the first pass. >> >> One thing to be aware of is that sometimes (though rarely) a block's default >> latency might have changed so one needs to be sure to re-test their designs >> after updating. This is true regardless of whether one updates the blocks >> manually or with one of the above functions. >> >> Hope this helps, >> Dave >> >>

