00001 /*! \file swig_etirm_types.h 00002 00003 \brief 00004 Definition of types that are referenced in swig_etirm.h. 00005 00006 Estimation Toolkit for Item Response Models (ETIRM) 00007 http://www.smallwaters.com/software/cpp/etirm.html 00008 00009 Author(s): 00010 Werner Wothke, maintenance (http://www.smallwaters.com) 00011 Brad Hanson (http://www.b-a-h.com/) 00012 See the file LICENSE for information on usage and redistribution. 00013 00014 Copyright (C) 2008, Werner Wothke 00015 Copyright (c) 2000-2001, Bradley A. Hanson 00016 */ 00017 00018 #ifndef SWIG_ETIRM_TYPES_H_ 00019 #define SWIG_ETIRM_TYPES_H_ 00020 00021 #ifdef ETIRM_NO_DIR_PREFIX 00022 #include "etirmtypes.h" 00023 #include "ItemNR.h" 00024 #include "DiscreteLatentDist.h" 00025 #include "ExamineeGrpCov.h" 00026 #else 00027 #include "etirm/etirmtypes.h" 00028 #include "etirm/ItemNR.h" 00029 #include "etirm/DiscreteLatentDist.h" 00030 #include "etirm/ExamineeGrpCov.h" 00031 #endif 00032 00033 // for random number generator (http://www.boost.org) 00034 #include <boost/random/mersenne_twister.hpp> 00035 00036 // SWIG cannot handle the template arguments 00037 #ifndef SWIG 00038 00039 //! Vector of item responses 00040 typedef SCPPNT::Vector<etirm::Response> ResponseVector; 00041 00042 //! Class to hold information about discrete latent variable distribution 00043 typedef etirm::DiscreteLatentDist<etirm::Real> lvdist_type; 00044 00045 //! Class to hold information about examinees 00046 typedef etirm::ExamineeGrpCov<ResponseVector, etirm::RealVector> examinee_type; 00047 00048 /*! 00049 \brief 00050 Type used for array of items. 00051 00052 Using ItemNR allows different items to be modeled by different classes 00053 descendent from ItemNR (e.g., the 3PL model could be used for some items, 00054 and the 2PL model used for other items). 00055 */ 00056 typedef etirm::ItemNR<lvdist_type> item_type; 00057 00058 /*! 00059 \brief 00060 Use the Mersenne Twister (http://www.math.keio.ac.jp/matumoto/emt.html) 00061 from the Boost random number library (http://www.boost.org/libs/random/index.html) 00062 as random number generator for bootstrap samples. 00063 */ 00064 typedef boost::mt19937 random_type; 00065 00066 #endif // SWIG 00067 #endif