コード例 #1
0
ファイル: Archive.cs プロジェクト: mujing/rrd4net
 public Archive(RrdDb parentDb, ArcDef arcDef)
 {
    bool shouldInitialize = arcDef != null;
    this.parentDb = parentDb;
    consolFun = new RrdString(this, true);  // constant, may be cached
    xff = new RrdDouble(this);
    steps = new RrdInt(this, true);            // constant, may be cached
    rows = new RrdInt(this, true);            // constant, may be cached
    if (shouldInitialize)
    {
       consolFun.set(arcDef.getConsolFun().Name);
       xff.set(arcDef.getXff());
       steps.set(arcDef.getSteps());
       rows.set(arcDef.getRows());
    }
    int n = parentDb.getHeader().getDsCount();
    states = new ArcState[n];
    robins = new Robin[n];
    for (int i = 0; i < n; i++)
    {
       states[i] = new ArcState(this, shouldInitialize);
       int numRows = rows.get();
       robins[i] = new Robin(this, numRows, shouldInitialize);
    }
 }
コード例 #2
0
ファイル: Datasource.cs プロジェクト: mujing/rrd4net
 public Datasource(RrdDb parentDb, DsDef dsDef)
 {
     bool shouldInitialize = dsDef != null;
     this.parentDb = parentDb;
     dsName = new RrdString(this);
     dsTypeName = new RrdString(this);
     if (!shouldInitialize) 
        dsType = new DsType(dsTypeName.get());
     heartbeat = new RrdLong(this);
     minValue = new RrdDouble(this);
     maxValue = new RrdDouble(this);
     lastValue = new RrdDouble(this);
     accumValue = new RrdDouble(this);
     nanSeconds = new RrdLong(this);
     if (shouldInitialize)
     {
         dsName.set(dsDef.getDsName());
         dsType = dsDef.getDsType();
         dsTypeName.set(dsType.Name);
         heartbeat.set(dsDef.getHeartbeat());
         minValue.set(dsDef.getMinValue());
         maxValue.set(dsDef.getMaxValue());
         lastValue.set(Double.NaN);
         accumValue.set(0.0);
         Header header = parentDb.getHeader();
         nanSeconds.set(header.getLastUpdateTime() % header.getStep());
     }
 }
コード例 #3
0
ファイル: ArcState.cs プロジェクト: mujing/rrd4net
	public ArcState(Archive parentArc, bool shouldInitialize) {
		this.parentArc = parentArc;
		accumValue = new RrdDouble(this);
		nanSteps = new RrdLong(this);
		if(shouldInitialize) {
			Header header = parentArc.getParentDb().getHeader();
			long step = header.getStep();
			long lastUpdateTime = header.getLastUpdateTime();
			long arcStep = parentArc.getArcStep();
			long initNanSteps = (Util.normalize(lastUpdateTime, step) -
				Util.normalize(lastUpdateTime, arcStep)) / step;
			accumValue.set(Double.NaN);
			nanSteps.set(initNanSteps);
		}
	}