Thanks - this is kind of works.
Unfortunately there is no atomic coordinates generated - how we can do this?
Otherwise it will display just single dot.

Regards,
Evgueni


2008/8/8 Igor Filippov <[email protected]>

> The following works for me:
>
>        std::stringstream ss;
>        SDWriter *writer = new SDWriter(&ss);
>        writer->setProps(propNames);
>        writer->write(*mol);
>        writer->flush();
>        delete mol;
>        delete writer;
>        std::string sdf=ss.str();
>
> Igor
>
> On Fri, 2008-08-08 at 12:05 +0100, Evgueni Kolossov wrote:
> >
> > Dear Greg,
> >
> > Can you please show how to extract text from stringstream (which in
> > your case actually ostream) into string?
> > ROMol *mol;
> > mol = SmilesToMol(strSmile);
> > ostream *ss = new stringstream();
> > SDWriter *writer = new SDWriter(ss, false);
> > writer->write(*mol);
> >
> > string strMolStructure;
> > //Now we want to put MDLMol into the string. For stringstream
> > ss->str() will do the job but ss is ostream....)
> >
> > Regards,
> > Evgueni
> >
> >
> > -----Original Message-----
> > From: [email protected]
> > [mailto:[email protected]] On Behalf Of Greg
> > Landrum
> > Sent: 05 August 2008 19:07
> > To: Igor Filippov [Contr]
> > Cc: [email protected]
> > Subject: Re: [Rdkit-discuss] SD File output
> >
> >
> > Dear Igor,
> >
> > This is a good one for the mailing list, so I'm cross-posting my
> > reply.
> >
> > On Tue, Aug 5, 2008 at 6:47 PM, Igor Filippov [Contr]
> > <[email protected]> wrote:
> > >
> > > Is there any way to convert a mol object into an SD file (i.e. CTAB
> > > plus user-defined properties) and have the result in a string?
> > > MolToMolBlock() only outputs CTAB portion without the properties.
> >
> > Indeed there is. You can construct an SDWriter (defined in
> > $RDBASE/GraphMol/FileParsers/MolWriters.h) using a pointer to a
> > stringstream, then use the SDWriter's write() method. It's probably
> > safest to call the flush() method before reading your text out of the
> > stringstream.
> >
> > An example for using this with a SmilesWriter is in the function
> > testSmilesWriter2() in testMolWriter.cpp. Using an SDWriter is exactly
> > equivalent.
> >
> > -greg
> >
> > -------------------------------------------------------------------------
> > This SF.Net email is sponsored by the Moblin Your Move Developer's
> > challenge Build the coolest Linux based applications with Moblin SDK &
> > win great prizes Grand prize is a trip for two to an Open Source event
> > anywhere in the world
> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
> > _______________________________________________
> > Rdkit-discuss mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
> >
> >
> > -------------------------------------------------------------------------
> > This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> > Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> > Grand prize is a trip for two to an Open Source event anywhere in the
> world
> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
> > _______________________________________________ Rdkit-discuss mailing
> list [email protected]
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
> --
> Igor Filippov <[email protected]>
>
>


-- 
Dr. Evgueni Kolossov (PhD)
[email protected]
Tel. +44(0)1628 627168
Mob. +44(0)7812070446

Reply via email to