5 #include <boost/shared_ptr.hpp>
10 const std::string& name,
unsigned int length,
int doocsType, ChimeraTK::AccessModeFlags flags) {
22 if(doocsType == DATA_TEXT || doocsType == DATA_STRING || doocsType == DATA_USTR) {
25 info.
dataDescriptor = ChimeraTK::DataDescriptor(ChimeraTK::DataDescriptor::FundamentalType::string);
28 else if(doocsType == DATA_INT || doocsType == DATA_A_INT || doocsType == DATA_A_SHORT || doocsType == DATA_A_LONG ||
29 doocsType == DATA_A_BYTE || doocsType == DATA_IIII) {
31 if(doocsType == DATA_A_SHORT) {
34 else if(doocsType == DATA_A_BYTE) {
37 else if(doocsType == DATA_A_LONG) {
43 if(doocsType == DATA_IIII) info.
_length = 4;
46 ChimeraTK::DataDescriptor(ChimeraTK::DataDescriptor::FundamentalType::numeric,
true,
true, digits);
49 else if(doocsType == DATA_IFFF) {
50 info.
_name = name +
"/I";
52 ChimeraTK::DataDescriptor::FundamentalType::numeric,
true,
true, 11);
55 infoF1.
_name = name +
"/F1";
57 ChimeraTK::DataDescriptor(ChimeraTK::DataDescriptor::FundamentalType::numeric,
false,
true, 320, 300);
60 infoF2.
_name = name +
"/F2";
63 infoF3.
_name = name +
"/F3";
70 else if(doocsType == DATA_IMAGE) {
73 ChimeraTK::DataDescriptor::FundamentalType::numeric,
true,
false, 3, 0, ChimeraTK::DataType::uint8);
79 ChimeraTK::DataDescriptor(ChimeraTK::DataDescriptor::FundamentalType::numeric,
false,
true, 320, 300);
84 infoEventId.
_name = name +
"/eventId";
89 ChimeraTK::DataDescriptor(ChimeraTK::DataDescriptor::FundamentalType::numeric,
true,
true, 20);
91 if(!hasRegister(infoEventId.
getRegisterName())) addRegister(infoEventId);
94 infoTimeStamp.
_name = name +
"/timeStamp";
98 ChimeraTK::DataDescriptor(ChimeraTK::DataDescriptor::FundamentalType::numeric,
true,
true, 20);
101 if(!hasRegister(infoTimeStamp.
getRegisterName())) addRegister(infoTimeStamp);