%{ #include %} // This file is generated automatically from G4THitsCollection.hh . It is an // intermediate file useful for debugging, but otherwise may be deleted. marshaling class MarshaledG4HitsCollection (G4HitsCollection* param) { void* theCollection; //FIELDMARSHAL: { int copy_off = 0; int $ELE_COUNT; $ELE_COUNT = ((G4THitsCollection*)$THIS)->entries(); memcpy( $$+copy_off, &$ELE_COUNT,sizeof(int)); copy_off += sizeof(int); for(int $ELE_INDEX=0;$ELE_INDEX<$ELE_COUNT;$ELE_INDEX++){ ExN02TrackerHit* $ELEMENT; $ELEMENT = (*((G4THitsCollection*)$THIS))[$ELE_INDEX]; MarshaledExN02TrackerHit marEle($ELEMENT); EXTEND_BUFFER(marEle.getBufferSize()); memcpy($$+copy_off, marEle.getBuffer(), marEle.getBufferSize()); copy_off += marEle.getBufferSize(); } $SIZE = copy_off; } //FIELDUNMARSHAL: { int copy_off = 0; int $ELE_COUNT; memcpy(&$ELE_COUNT, $$+copy_off, sizeof(int)); copy_off += sizeof(int); for(int $ELE_INDEX=0;$ELE_INDEX<$ELE_COUNT;$ELE_INDEX++){ MarshaledExN02TrackerHit marEle($$+copy_off); ExN02TrackerHit* $ELEMENT = (ExN02TrackerHit* )marEle.unmarshal(); copy_off += marEle.getBufferSize(); ((G4THitsCollection*)$THIS)->insert((ExN02TrackerHit*)$ELEMENT); } } //FIELDSIZE: { } unmarshaling constructor { $THIS = new G4HitsCollection(); } } template marshaling class MarshaledG4THitsCollection (G4THitsCollection* param) : public G4HitsCollection { int __dummy569; // marshaling code for MSH_superclass //FIELDMARSHAL: { MarshaledG4HitsCollection marParent($THIS); EXTEND_BUFFER(marParent.getBufferSize()); memcpy($$,marParent.getBuffer(), marParent.getBufferSize()); $SIZE = marParent.getBufferSize(); } //FIELD UNMARSHAL: { MarshaledG4HitsCollection marObj($$); marObj.unmarshalTo($THIS); } //FIELD SIZE : { //code for size, just dummy code because the size will be set correctly at the end of marshaling code } unmarshaling constructor { $THIS = new G4THitsCollection(); } }