Lumiera  0.pre.03
»edityourfreedom«
entry-id.hpp File Reference

Go to the source code of this file.

Description

Bare symbolic and hash ID used for accounting of asset like entries.

This ID can be used to register instances with an accounting table, without all the overhead of creating individual assets for each entry. The datafields in the symbolic part of the ID are similar to the asset identity tuple; the idea is to promote individual entries to full fledged assets on demand. Alongside with the symbolic identity, which can be reduced to just a Symbol and (compile time) type information, we store the derived hash value as LUID.

Note
as of 3/2010 this is an experimental setup and exists somewhat in parallel to the assets. We're still in the process of finding out what's really required to keep track of all the various kinds of objects. ///////////////////TICKET #739
See also
asset::Asset::Ident
entry-id-test.cpp

Definition in file entry-id.hpp.

#include "lib/error.hpp"
#include "lib/hash-indexed.hpp"
#include "lib/idi/genfunc.hpp"
#include "lib/util.hpp"
#include <boost/functional/hash.hpp>
#include <boost/operators.hpp>
#include <string>

Classes

class  BareEntryID
 type erased baseclass for building a combined hash and symbolic ID. More...
 
struct  EntryID< TY >
 typed symbolic and hash ID for asset-like position accounting. More...
 
struct  EntryID< TY >
 typed symbolic and hash ID for asset-like position accounting. More...
 
struct  BareEntryID::UseEmbeddedHash
 using BareEntryID derived objects as keys within std::unordered_map More...
 

Functions

bool operator== (BareEntryID const &i1, BareEntryID const &i2)
 

Namespaces

 lib
 Implementation namespace for support and library code.
 
 lib::idi
 Identification Schemes.