About: sstream is a research topic. Over the lifetime, 30 publications have been published within this topic receiving 285 citations. The topic is also known as: std::sstream & sstream.
TL;DR: In this paper, a conversion system between CORBA and C/C++ environments is presented, which includes a format definition database storing first information including, for example, user definitions, C-C++ specific information and/or CORBA specific information, and a parser parses the first and second information into a data dictionary.
Abstract: A conversion system converts data between CORBA and C/C++ environments. The conversion system includes a format definition database storing first information including, for example, user definitions, C/C++ specific information and/or CORBA specific information. A system dependent database stores second information including, for example, operating system and processor specific information. A parser parses the first and second information into a data dictionary. A decoder generates C/C++ memory structures using the data dictionary and CORBA data couples. An encoder generates CORBA data couples using the data dictionary and C/C++ memory structures.
TL;DR: In this article, methods for converting from a COM interface pointer to an underlying C++ object are described in various embodiments, in which classes are constructed in support of the underlying c++ object.
Abstract: Methods for converting from a COM interface pointer to an underlying C++ object are described in various embodiments. In the various embodiments, classes are constructed in support of the underlying C++ object. The classes are used to enforce rules safely convert a COM interface pointer. One rule is that a COM interface to be converted cannot be marshaled. A second rule is that an object requesting the C++ object must have legal access to the COM interface (for example, the same execution unit). A third rule is that the object type of the COM interface must be in the inheritance hierarchy of the C++ object.
TL;DR: O++ extends C++ with the ability to create and access persistent objects with volatile pointers, which encountered this problem in the implementation of O++, which is a database language based on C++.
Abstract: C++ objects of types that have virtual functions or virtual base classes contain volatile (‘memory’) pointers. We call such pointers ‘hidden pointers’ because they were not specified by the user. If such C++ objects are made persistent, then these pointers become invalid across program invocations. We encountered this problem in our implementation of O++, which is a database language based on C++. O++ extends C++ with the ability to create and access persistent objects.
In this paper, we describe the hidden pointers problem in detail and present several solutions to it. Our solutions are elegant in that they do not require modifying the C++ compiler or the semantics of C++. We also discuss another problem that arises because C++ allows base class pointers to point to derived class objects. C++ has emerged as the de facto standard language for software development, and database systems based on C++ have attracted much attention. We hope that the details and techniques presented will be useful to database researchers and to implementors of object-oriented database systems based on C++.
TL;DR: A new software tool called C++2MPI which can automatically generate MPI derived datatypes for a specified C++ class, and can generate data types for derived classes, for partially and fully-specialized templated classes, and for classes with private data members.
Abstract: The Message Passing Interface I.I (MPI I.I) standard defines a library of message-passing functions for parallel and distributed computing. We have developed a new software tool called C++2MPI which can automatically generate MPI derived datatypes for a specified C++ class. C++2MPI can generate data types for derived classes, for partially and fully-specialized templated classes, and for classes with private data members. Given one or more user-provided classes as input, C++2MPI generates, compiles and archives a function for creating the MPI derived datatype. When the generated function is executed, it builds the derived MPI datatype if the datatype does not already exist, and returns the value of an MPI handle for referencing the datatype. PGMT (Processing Graph Method Tool) is a set of application program interfaces for porting the Processing Graph Method (PGM), a parallel programming method, to diverse networks of processors. C++2MPI was developed as a component of PGMT, but can be used as a stand-alone tool.