/** * Write a ShufflingGroup in the current binary stream. * * @param \qtism\data\state\ShufflingGroup $shufflingGroup * @throws QtiBinaryStreamAccessException */ public function writeShufflingGroup(ShufflingGroup $shufflingGroup) { try { $identifiers = $shufflingGroup->getIdentifiers(); $this->writeTinyInt(count($identifiers)); foreach ($identifiers as $identifier) { $this->writeString($identifier); } $fixedIdentifiers = $shufflingGroup->getFixedIdentifiers(); $this->writeTinyInt(count($fixedIdentifiers)); foreach ($fixedIdentifiers as $identifier) { $this->writeString($identifier); } } catch (BinaryStreamAccessException $e) { $msg = "An error occured while writing a shufflingGroup."; throw new QtiBinaryStreamAccessException($msg, $this, QtiBinaryStreamAccessException::SHUFFLING_GROUP, $e); } }