Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Early binding data definitions - EDMsupervisor™ has a generator that generates C++ classes that represent the entity and defined types in the EXPRESS schema in question.
  • Designed to handle simple as well as the most comprehensive EXPRESS schemas defined so far.
  • Two different memory models:
    • C++ Objects in memory (OIM). The C++ class representations of the EDM database instances must be read into memory before they can be used by the program. New objects are created in memory and written to the database later by the method writeAllObjectsToDatabase. Programs must declare:

...

    •    using namespace OID; 
    • C++ Objects in the database (OID). The C++ Objects are handles to objects in the database. The get and put methods for the attributes of the objects are using EDMinterface™ to read and write attribute values. To use this memory model one must compile the project with the preprocessor directive USE_EDMI. Programs must declare:

using namespace OIM;


  • The use of a memory allocator (CMemoryAllocator) that provides efficient memory management is mandatory.
  • The generated C++ classes do not have destructors. This implies that it is not possible to delete (release memory ) of single objects. Objects are released collectively by deleting the CMemoryAllocator object or by executing the Reset method of the CMemoryAllocator class. The benefit of this way of deleting objects is better performance and almost no probability for memory fragmentation.

...