Writes a data element.
213 "UniqueRefWriter::write");
218 Reflex::Object refObj(
m_objectType, const_cast<void*>(refAddress));
221 refObj.Invoke(
"operator!",isNull);
228 std::type_info* refTypeInfo = 0;
229 refObj.Invoke(
"typeInfo",refTypeInfo);
231 className = refType.Name(Reflex::SCOPED);
239 DependentClassWriter writer;
242 refObj.Invoke(
"operator*",refData);
243 writer.write( oid, refId, refData );
Sequences & containerSequences()
RelationalBuffer * m_operationBuffer
void * address(const void *topLevelAddress) const
DataElement * m_dataElement
RelationalBuffer & addVolatileBuffer()
MappingElement & mappingForDependentClass(const Reflex::Type &dependentClass, bool writeEnabled=false)
IRelationalData * m_relationalData
ContainerSchema & m_schema
const std::vector< std::string > & columnNames() const
virtual coral::AttributeList & data()=0
int getNextId(const std::string &sequenceName, bool sinchronize=false)
const std::string & containerName()
void throwException(const std::string &message, const std::string &methodName)
static std::string sequenceNameForDependentClass(const std::string &containerName, const std::string &className)
Reflex::Type lookupDictionary(const std::type_info &typeInfo, bool throwFlag=true)
Reflex::Type m_objectType
std::string className(const T &t)
MappingElement & m_mappingElement
std::string uniqueRefNullLabel()