JCT software developer documentation
Instructions on how to extend various components within the JAST JCT software
Version 1.0
Craig Nicol, 5 October 2005
Overview
Adding A New XML Element to experiment data
- Add element and attribute list to
JastExpt.dtd
- Make sure to synchronise both the
jast_src
and thejast_install
version as necessary - Add element to
JastSAX2Handler::startElement()
to process attributes - Use
processTextAttribute()
to handle all screen messages - Add element to
JastSAX2Handler::endElement()
unless content is always empty - Document new element in
UserDoc.html
Adding A New String to JastExpt
- Add element to experiment data if required (se above)
- Add
RemovableExtText*
member tojast::JastExpt
- Add NULL constructor to new member in
jast::JastExpt::JastExpt()
- Add
jast::JastExpt::setText???()
to be called fromJastSAX2Handler::endElement()
- Remember to add to both the
.cpp
and.h
file - Add default value for string to
jast::JastExpt::validate()
System Messages within JCT experiment
Internal Name | code | arguments | notes |
---|---|---|---|
JSM_EXPT_START | "xs" | ||
JSM_EXPT_ABORT |
"xa" | ||
JSM_EXPT_END_BY_SUBJECT_REQUESTED |
"xr" | ||
JSM_EXPT_END_BY_SUBJECT_CONFIRMED |
"xc" | ||
JSM_EXPT_END_BY_SUBJECT_REJECTED |
"xx" | ||
JSM_EXPT_END_TIMEOUT |
"xt" | ||
JSM_CURSOR_MOVE |
"cm" | &own [0,1], &x, &y | |
JSM_EYE_CURSOR_MOVE |
"em" | &own [0,1], &x, &y | JCE added, move eye gaze cursor |
JSM_PART_MOVE |
"pm" | &id, &x, &y | |
JSM_PART_MOVE_START |
"pn" | &id, &local, &x, &y | |
JSM_PART_MOVE_END | "po" | &id, &local | |
JSM_PART_ROTATE |
"pr" | &id, &angle | |
JSM_PART_ROTATE_START |
"ps" | &id, &refangle, &local | |
JSM_PART_ROTATE_END |
"pt" | &id, &local | |
JSM_PART_JOIN |
"pj" | &aID, &aX, &aY, &aRot, &bID, &bX, &bY, &bRot, &newID | |
JSM_PART_CREATE |
"pa" | &uid, &x, &y, &id, &local | |
JSM_PART_REMOVE |
"pd" | &id, &countBreak, &updateUniqueCounts | |
JSM_REQUEST_CURSOR_MOVE |
"rc" | &x, &y | |
JSM_REQUEST_EYE_CURSOR_MOVE |
"re" | &x, &y | JCE added, request movement of eye gaze cursor |
JSM_REQUEST_PART_MOVE |
"rm" | &id, &x, &y | |
JSM_REQUEST_PART_MOVE_START |
"rn" | &id, &x, &y | |
JSM_REQUEST_PART_MOVE_END |
"ro" | &id | |
JSM_REQUEST_PART_ROTATE |
"rr" | &id, &angle | |
JSM_REQUEST_PART_ROTATE_START |
"rs" | &id, &refangle | |
JSM_REQUEST_PART_ROTATE_END |
"rt" | &id | |
JSM_REQUEST_PART_CREATE |
"ra" | &uid, &x, &y, &id | |
JSM_REQUEST_PART_REMOVE | "rd" | &id, &countBreak, &updateUniqueCounts |