本文整理汇总了C++中Serializable::className方法的典型用法代码示例。如果您正苦于以下问题:C++ Serializable::className方法的具体用法?C++ Serializable::className怎么用?C++ Serializable::className使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Serializable
的用法示例。
在下文中一共展示了Serializable::className方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: readLog
RobotConfiguration* readLog(std::vector<BaseSensorData*>& sensorDatas, Deserializer& des){
RobotConfiguration* conf = 0;
Serializable *o;
int numObjects=0;
while( (! conf && (o=des.readObject())) ){
cerr << o->className() << endl;
numObjects++;
if (! conf) {
conf = dynamic_cast<RobotConfiguration*>(o);
if (conf) {
cerr << "got config" << endl;
if (! conf->isReady()){
cerr << "conf failure" << endl;
return 0;
}
}
continue;
}
}
if (!conf) {
cerr << "unable to read robot configuration, aborting" << endl;
return 0;
}
while( (o=des.readObject()) ){
BaseSensorData* sensorData=dynamic_cast<BaseSensorData*>(o);
if(sensorData)
sensorDatas.push_back(sensorData);
}
return conf;
}
示例2: writeObject
bool Serializer::writeObject(Serializable& instance) {
ObjectData* data=new ObjectData();
instance.serialize(*data,*this);
processDataForWrite(data,*this);
if (!_datastream) {
string str=_dataFileName;
replaceEnvTags(str,_envMap);
create_directories(path(str).parent_path());
_datastream=new ofstream(str.c_str());
}
if (*_datastream) {
_objectWriter->writeObject(*_datastream,instance.className(),*data);
//TODO Change writer to get status flag
return true;
}
return false;
}