20 std::string
const& blockToStrip,
21 std::string
const& copyFilename )
29 std::string restOfLine;
30 bool copyingLine(
true );
31 std::stringstream copyStream;
64 std::ofstream outputStream( copyFilename.c_str() );
65 outputStream << copyStream.str();
70 bool const isVerbose ) :
71 isVerbose( isVerbose ),
72 shouldRecordBlocksNotRegistered( shouldRecordBlocksNotRegistered ),
79 currentBlockPointer( NULL ),
82 firstWordOfLine(
"" ),
84 observingSpectrumUpdater(),
85 ownsFmassBlock( false ),
86 fmassBlockPointer( NULL ),
88 ownsFmasserrBlock( false ),
89 fmasserrBlockPointer( NULL ),
91 ownsMassBlock( false ),
92 massBlockPointer( NULL ),
94 successfullyRead( false )
325 double currentBlockScale( 0.0 );
std::list< observerWithBool > observerList
virtual void registerObserver(PushedToObserver< PushedClass > *const joiningObserver)
static void transformToLowercase(std::string &stringToTransform)
static std::string firstWordOf(std::string const &stringToParse, std::string *const remainderString=NULL, std::string const &separatorChars=whitespaceChars)
static bool stringsMatchIgnoringCase(std::string const &firstString, std::string const &secondString)
static double stringToDouble(std::string const &stringToInterpret)
static void transformToUppercase(std::string &stringToTransform)
static double const notANumber
virtual bool isMassBlock() const
virtual bool isFmassBlock() const
std::string const & getName() const
virtual bool isFmasserrBlock() const
static std::string const blockIdentifierString
static std::string const decayIdentifierString
void recordHeader(std::string const &headerString, std::string const &commentString, double const blockScale)
void recordBodyLine(std::string const &dataString, std::string const &commentString)
void checkForMassBlocksForSpectrum()
virtual void registerBlock(SLHA::BaseSlhaBlock &blockToUpdate)
std::string firstWordOfLine
BOL::VectorlikeArray< std::string > wordsOfLine
SLHA::SameNameBlockSet * currentBlockPointer
SLHA::BaseSlhaBlock * fmassBlockPointer
SLHA::BaseSlhaBlock * massBlockPointer
std::map< std::string, SLHA::SameNameBlockSet * > blockMap
std::pair< std::string, SLHA::SameNameBlockSet * > mapInserter
void prepareForEitherBlockOrDecay()
std::map< std::string, SLHA::SameNameBlockSet * >::iterator blockMapIterator
SlhaParser(bool const shouldRecordBlocksNotRegistered=true, bool const isVerbose=true)
bool readFile(std::string const &slhaFileName)
void prepareToReadNewDecay()
std::string commentString
bool const shouldRecordBlocksNotRegistered
SpectrumUpdater observingSpectrumUpdater
void prepareToReadNewBlock()
SLHA::BaseSlhaBlock * fmasserrBlockPointer
void ensureSpectraRecordMasses()
BOL::CommentedTextParser fileParser
static void copyWithoutBlock(std::string const &originalFilename, std::string const &blockToStrip, std::string const ©Filename)
void finishUpEitherBlockOrDecay()
bool isHoldingDecay() const