internal Header(RrdDb parentDb, RrdDef rrdDef) { this.parentDb = parentDb; signature = new RrdString(SIGNATURE, this); step = new RrdLong(rrdDef.Step, this); dsCount = new RrdInt(rrdDef.DsCount, this); arcCount = new RrdInt(rrdDef.ArcCount, this); lastUpdateTime = new RrdLong(rrdDef.StartTime, this); }
/// <summary> /// /// </summary> /// <param name="rrdDef"></param> public RrdDb(RrdDef rrdDef) { rrdDef.Validate(); InitializeSetup(rrdDef.Path, RrdFile.MODE_CREATE, false); // create header header = new Header(this, rrdDef); // create datasources DsDef[] dsDefs = rrdDef.DsDefs; datasources = new Datasource[dsDefs.Length]; for (int i = 0; i < dsDefs.Length; i++) { datasources[i] = new Datasource(this, dsDefs[i]); } // create archives ArcDef[] arcDefs = rrdDef.ArcDefs; archives = new Archive[arcDefs.Length]; for (int i = 0; i < arcDefs.Length; i++) { archives[i] = new Archive(this, arcDefs[i]); } // finalize FinalizeSetup(); Util.Debug(rrdDef.RrdToolCommand); }