Skip to content
Snippets Groups Projects
Commit ad52cb27 authored by Jan Frederik Engels's avatar Jan Frederik Engels
Browse files

Some event "examples".

parent 372d91e1
No related branches found
No related tags found
No related merge requests found
......@@ -162,7 +162,80 @@ PROGRAM example
jd = t_juliandelta(sign=c_sign, day=99_c_int64_t, ms=123_c_int64_t)
IF (.NOT. lerror) WRITE(0,*) ERR_UNCAUGHT
call event_tests
CONTAINS
subroutine event_tests
type(t_eventgroup) :: outputEventGroup
type(t_event) :: outputEvent
type(t_event) :: checkpointEvent
type(t_event) :: restartEvent
type(t_event), pointer :: currentEvent
type(t_datetime) :: dtt
type(t_timedelta) :: tdd
character(len=max_eventname_str_len) :: currentEventString
logical :: lret
character(len=max_eventname_str_len) :: aa
character(len=max_groupname_str_len) :: bb
character(len=max_datetime_str_len) :: current_date_string_tmp
outputEventGroup = t_eventGroup('output driver')
aa = outputEventGroup%getName()
print *, aa
outputEvent = t_event('output', '2000-01-01T00:00:00', '2010-01-01T00:00:01', '2013-01-01T00:00:02', 'PT06H')
call outputEventGroup%append(outputEvent)
! dtt => getEventReferenceDateTime(outputEvent)
! call datetimeToString(dtt, current_date_string_tmp)
! print *, trim(current_date_string_tmp)
dtt = outputEvent%getFirstDateTime()
current_date_string_tmp = dtt%toString()
print *, trim(current_date_string_tmp)
dtt = outputEvent%getLastDateTime()
current_date_string_tmp = dtt%toString()
print *, trim(current_date_string_tmp)
tdd = outputEvent%getInterval()
current_date_string_tmp = tdd%toString()
print *, trim(current_date_string_tmp)
checkpointEvent = t_event('checkpoint', '2010-01-01T00:00:00', '2010-01-01T00:00:00', '2013-01-01T00:00:00', 'P05D')
call outputEventGroup%append(checkpointEvent)
restartEvent = t_event('restart', '2000-01-01T00:00:00', '2010-01-01T00:00:00', '2013-01-01T00:00:00', 'P01M')
call outputEventGroup%append(restartEvent)
currentEvent => outputEventGroup%getFirstEvent()
print *, 'Event list: '
do while (associated(currentEvent))
currentEventString = currentEvent%getName()
print *,' event: ', trim(currentEventString)
! AHHHHH
currentEvent => currentEvent%nextEventInGroup
enddo
!FIXME
! print *,'HELLO', restartEventgetEvent);
! print *, 'GOOGLE', getEventisFirstInMonth(outputEvent)
! type(t_datetime) :: current_date_test
! current_date_test = t_datetime('2010-01-02T00:00:00')
! tmp_date_test_1 = t_datetime('2000-01-01T01:00:00')
! call getTriggeredPreviousEventAtDateTime(checkpointEvent, tmp_date_test_1)
! call datetimeToString(tmp_date_test_1, current_date_string)
! print *, current_date_string
bb = outputEventGroup%getName()
print *, bb
! call deallocateEventGroup(outputEventGroup)
end subroutine event_tests
SUBROUTINE error_callback(leading_text, message_text)
CHARACTER(len=*), INTENT(in) :: leading_text
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment