Boost logo

Boost :

Subject: Re: [boost] Finite state machine
From: christophe.j.henry_at_[hidden]
Date: 2014-09-07 15:56:13


Hi,

>> Hi,
>> I don't know if you're using msm or statechart but msm uses no dynamic
>> memory, except if you choose to use the event queue or deferred events.
>> And
>> even this can be avoided by providing as template argument you own queue.
>> If you don't require these features, you can disable them.
>>
>> Cheers,
>> Christophe
>
>I'm using MSM.
>Yes I tried this, but I could not do so. Perhaps, I doing something wrong.

See
http://www.boost.org/doc/libs/1_56_0/libs/msm/doc/HTML/ch03s02.html#d0e1147

You simply need a no_message_queue typedef and the message queue is gone.
For the deferred event queue, MSM finds about it by itself and you have
nothing to do, only to have no deferred event.

>Problem in that i've no OS, and even no full C library, I'm using
>newlib-nano.

MSM uses a bit of the C++ library, no idea what you don't have. Mostly, it
is <vector>, <functional> and <utility>, though you can probably remove
vector, I don't think it should be there, I'll try to get rid of it and see.
But MSM is using lots of boost and it will probably include more, you might
have to try it out.

>I was trying to disable everything, that I can, but this didn't help. I
>understand, that this situation is special and boostmust count on
>something.
>May be you can advise me how to use (and, may be,build?)boost with
>arm-none-eabi compiler.I've read docs and trying to build boost for
>arm-none-eabi, but compilation fails.
>Do I understand correctly, that MSM doesn't need to compile something -
>this is only .hpp files and it doesn't use libs, so I can try to use it
>without compilation?

Yes, header only, nothing to compile.

HTH,
Christophe


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk