Re: [eigen] Eigen with Boost::smart_ptr |
[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]
On Tue, Nov 8, 2011 at 9:50 PM, Jim Bosch <talljimbo@xxxxxxxxx> wrote: > On 11/08/2011 08:44 AM, Christoph Hertzberg wrote: >> >> Hi, >> >> On 08.11.2011 13:07, Sathishkumar Duraisamy wrote: >>> >>> Hi all, >>> >>> I am in some kind of signal processing application. To manage and >>> manipulate data, I have been using Eigen Matrix. >>> >>> Can you please give me some recommendation for using pointers for >>> dynamically allocated eigen matrix? >> >> I guess you need to be a bit more specific for that ... >> Maybe you don't need to dynamically allocate your matrices at all, since >> Eigen::MatrixXd already dynamically allocate their memory. Thanks for pointing me, "why need to dynamically allocate?". This helps me change the model. As per the present model, I have a class called ADC driver class which actually fills the row matrix and send to another class called rawsamples that holds these matrices. Now I have been changing the model in which ADC class requests the matrices to be filled from the rawsamples. ( for reference I have attached some diagrams!) >> Side note: That might actually be a nice feature, having kind-of a >> shared matrix, i.e. multiple instances of the same matrix share the same >> memory until the matrix is modified, in which case it allocates new >> memory (unless of course it is the last instance using that memory). >> > > I've actually been working on shared Eigen matrices as part of an Eigen > interface to another project, and I'd be happy to contribute code to that > effect, but it's not as straightforward as one might expect. For instance, > when one gets a block of a shared matrix, does the block share memory with > the original? That would make it a lot harder for the compiler to optimize > away the block, but it would make it a lot more sensible when you want to > return the block from a function where the matrix is a local variable. > >>> Is it possible to use boost::smart_ptr and boost::pointer_container >>> with Eigen Matrix. In case, which is good smart_ptr, shared_ptr or >>> week ptr? >> >> I can't see a reason why it is not possible. >> >> smart_ptr is just the name of the library, isn't it? >> W.r.t shared_ptr vs weak_ptr: you can construct weak_ptr only from >> shared_ptr, so you need at least one shared_ptr per matrix anyways. >> What's better afterwards depends on what you are planning to do. >> > > I agree, and I'd also say that I can think of very few situations in which > one would gain anything by using pointer container with Eigen, though it is > possible. Pointer container is mainly intended for holding hierarchies of > polymorphic classes. > As per the first model, I have to manage large no of pointer to dynamically allocated matrices. To hold these matrices I planned to use pointer container. > Jim > > > With thanks, Sathishkumar D http://flowersopenlab.weebly.com/
Attachment:
RawSamples_Model _A.jpeg
Description: JPEG image
Attachment:
RawSamples_Model_B.jpeg
Description: JPEG image
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |