Skip to main content

Miscellaneous functions used in the CogWorks lab.

Project description

pycogworks is a Python package with miscellaneous functions used in the CogWorks lab.

Installation

pycogworks can be installed using ‘pip’.

# pip install pycogworks

Dependencies

pycogworks has the following dependencies:

GUI Functions

pycogworks.getSubjectInfo

Creates a GUI dialog to collect subject information. The default dialog collects subjects first name, last name and RIN. Additional fields can be collected by passing an array of field names to getSubjectInfo. getSubjectInfo returns a dict of subject information where the keys are the field names converted to lower case and spaces replaced with underscores. The RIN field is automatically encrypted using pycogworks.rin2id and stored in the ‘encrypted_rin’ field.

>>> getSubjectInfo(["Age"])
{'rin': u'123456789', 'first_name': u'Foo', 'last_name': u'Bar', 'age': u'18'}
http://ompldr.org/vZm5ldw

Logging Functions

pycogworks.getDateTimeStamp

Returns the most accurate timestamp possible for the current OS.

>>> get_time()
1348684540.905437

pycogworks.getDateTimeStamp

Generates a date/time stamp usefull in logs and for log filenames.

>>> getDateTimeStamp()
'2012-9-26_13-33-6'

pycogworks.rin2id

Generates an encrypted id from a 9 digit RIN.

>>> rin2id(123456789)
'300fe9abdca99d4a32cb2c43f2a69c5c'
>>> rin2id('123456789')
'300fe9abdca99d4a32cb2c43f2a69c5c'

pycogworks.writeHistoryFile

Takes a dict of subject information and writes a history file. The subject information dict must contain a field called ‘rin’ with a value that contains a valid 9 digit RIN. If the subject information dict does not already contain an ‘encrypted_rin’ field, the RIN will be enrypted and added to the subject information dict under the field ‘encrypted_rin’. The subject information dict is then encoded as a JSON string and written to a file.

>>> writeHistoryFile("test.history",{"foo":"bar","rin":"123456789"})
# cat test.history
{
  "cipher": "AES/CBC (RIJNDAEL) - 16Byte Key",
  "encrypted_rin": "300fe9abdca99d4a32cb2c43f2a69c5c",
  "foo": "bar",
  "rin": "123456789"
}

Project details


Release history Release notifications

History Node

0.3.1

This version
History Node

0.3.0

History Node

0.2.0

History Node

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
PyCogWorks-0.3.0.tar.gz (11.8 kB) Copy SHA256 hash SHA256 Source None Oct 2, 2012

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page