private boolean dataClosed = false;
+ private boolean doXferSettings = true;
+
/**
* @return if doParse() was called at construction time
*/
* @param source
* @throws IOException
*/
+ public AlignFile(FileParse source, boolean doXferSettings)
+ throws IOException
+ {
+ this(true, source, true, doXferSettings);
+ }
+
public AlignFile(FileParse source) throws IOException
{
this(true, source);
public AlignFile(boolean parseImmediately, FileParse source,
boolean closeData) throws IOException
{
+ this(parseImmediately, source, closeData, true);
+ }
+
+ public AlignFile(boolean parseImmediately, FileParse source,
+ boolean closeData, boolean doXferSettings) throws IOException
+ {
super(source);
initData();
// stash flag in case parse needs to know if it has to autoconfigure or was
// configured after construction
this.parseImmediately = parseImmediately;
+ this.doXferSettings = doXferSettings;
if (parseImmediately)
{
+ "Need to call initData() again before parsing can be reattempted.");
}
parseCalled = true;
- parse();
+ parse(this.doXferSettings);
if (closeData && !dataClosed)
{
dataIn.close();
public abstract void parse() throws IOException;
/**
+ * This method is only overridden by JmolParser because of its use in
+ * StructureFile to parse annotations
+ *
+ * @param doXferSettings
+ * @throws IOException
+ */
+ public void parse(boolean doXferSettings) throws IOException
+ {
+ parse();
+ }
+
+ /**
* A general parser for ids.
*
* @String id Id to be parsed
{
seqs.add(seq);
}
+
+ public void setDoXferSettings(boolean b)
+ {
+ doXferSettings = b;
+ }
+
+ public boolean getDoXferSettings()
+ {
+ return doXferSettings;
+ }
}