Nodes of different colours represent the following:
Solid arrows point from a parent (sub)module to the submodule which is descended from it. Dashed arrows point from a module being used to the module or program unit using it. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | unitNumber | |||
integer, | intent(in) | :: | reportingInterval | |||
integer, | intent(in) | :: | reportID | |||
character(len=*), | intent(in) | :: | reportIDString | |||
integer, | intent(in) | :: | DayOfSim | |||
character(len=*), | intent(in) | :: | DayOfSimChr | |||
integer, | intent(in), | optional | :: | Month | ||
integer, | intent(in), | optional | :: | DayOfMonth | ||
integer, | intent(in), | optional | :: | Hour | ||
real(kind=r64), | intent(in), | optional | :: | EndMinute | ||
real(kind=r64), | intent(in), | optional | :: | StartMinute | ||
integer, | intent(in), | optional | :: | DST | ||
character(len=*), | intent(in), | optional | :: | DayType |
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
INTEGER FUNCTION WriteTimeStampFormatData (unitNumber, reportingInterval, reportID, reportIDString, &
DayOfSim, DayOfSimChr, Month, DayOfMonth, Hour, EndMinute, StartMinute, DST, DayType)
! FUNCTION INFORMATION:
! AUTHOR Greg Stark
! DATE WRITTEN July 2008
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS FUNCTION:
! This function reports the timestamp data for the output processor
! Much of the code in this function was embedded in earlier versions of EnergyPlus
! and was moved to this location to simplify maintenance and to allow for data output
! to the SQL database
! METHODOLOGY EMPLOYED:
! na
! REFERENCES:
! na
! USE STATEMENTS:
USE DataPrecisionGlobals
USE SQLiteProcedures
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! FUNCTION ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: unitNumber ! the Fortran output unit number
INTEGER, INTENT(IN) :: reportingInterval ! See Module Parameter Definitons for ReportEach, ReportTimeStep, ReportHourly, etc.
INTEGER, INTENT(IN) :: reportID ! The ID of the time stamp
CHARACTER(len=*), INTENT(IN) :: reportIDString ! The ID of the time stamp
INTEGER, INTENT(IN) :: DayOfSim ! the number of days simulated so far
CHARACTER(len=*), INTENT(IN) :: DayOfSimChr ! the number of days simulated so far
INTEGER, INTENT(IN), OPTIONAL :: Month ! the month of the reporting interval
INTEGER, INTENT(IN), OPTIONAL :: DayOfMonth ! The day of the reporting interval
INTEGER, INTENT(IN), OPTIONAL :: Hour ! The hour of the reporting interval
REAL(r64), INTENT(IN), OPTIONAL :: EndMinute ! The last minute in the reporting interval
REAL(r64), INTENT(IN), OPTIONAL :: StartMinute ! The starting minute of the reporting interval
INTEGER, INTENT(IN), OPTIONAL :: DST ! A flag indicating whether daylight savings time is observed
CHARACTER(len=*), INTENT(IN), OPTIONAL :: DayType ! The day tied for the data (e.g., Monday)
! FUNCTION PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! FUNCTION LOCAL VARIABLE DECLARATIONS:
CHARACTER(len=MaxMessageSize) :: cmessageBuffer
INTEGER :: TimeIndex
SELECT CASE (reportingInterval)
CASE(ReportEach, ReportTimeStep)
WRITE (unitNumber, TimeStampFormat) TRIM(reportIDString), TRIM(DayOfSimChr), &
Month, DayOfMonth, DST, Hour, StartMinute, EndMinute, DayType
TimeIndex = -1 ! Signals that writing to the SQL database is not active
IF (WriteOutputToSQLite) &
TimeIndex = CreateSQLiteTimeIndexRecord(reportingInterval, reportID, DayOfSim, &
Month, DayOfMonth, Hour, EndMinute, StartMinute, DST, DayType)
CASE(ReportHourly)
WRITE (unitNumber, TimeStampFormat) TRIM(reportIDString), TRIM(DayOfSimChr), Month, &
DayOfMonth, DST, Hour, 0.0, 60.0, DayType
TimeIndex = -1 ! Signals that writing to the SQL database is not active
IF (WriteOutputToSQLite) &
TimeIndex = CreateSQLiteTimeIndexRecord(reportingInterval, reportID, DayOfSim, &
Month, DayOfMonth, Hour, DST=DST, DayType=DayType)
CASE(ReportDaily)
WRITE (unitNumber, DailyStampFormat) TRIM(reportIDString), TRIM(DayOfSimChr), Month, &
DayOfMonth, DST, DayType
TimeIndex = -1 ! Signals that writing to the SQL database is not active
IF (WriteOutputToSQLite) &
TimeIndex = CreateSQLiteTimeIndexRecord(reportingInterval, reportID, DayOfSim, &
Month, DayOfMonth, DST=DST, DayType=DayType)
CASE(ReportMonthly)
WRITE (unitNumber, MonthlyStampFormat) TRIM(reportIDString), TRIM(DayOfSimChr), Month
TimeIndex = -1 ! Signals that writing to the SQL database is not active
IF (WriteOutputToSQLite) &
TimeIndex = CreateSQLiteTimeIndexRecord(ReportMonthly, reportID, DayOfSim, Month)
CASE(ReportSim)
WRITE (unitNumber, RunPeriodStampFormat) TRIM(reportIDString), TRIM(DayOfSimChr)
TimeIndex = -1 ! Signals that writing to the SQL database is not active
IF (WriteOutputToSQLite) &
TimeIndex = CreateSQLiteTimeIndexRecord(reportingInterval, reportID, DayOfSim)
CASE DEFAULT
Write(cmessageBuffer,'(A,I5)') 'Illegal reportingInterval passed to WriteTimeStampFormatData: ', reportingInterval
IF (WriteOutputToSQLite) &
CALL SQLiteWriteMessageMacro (cmessageBuffer)
TimeIndex = -1 ! Signals that writing to the SQL database is not active
END SELECT
WriteTimeStampFormatData = TimeIndex
RETURN
END FUNCTION WriteTimeStampFormatData