本文整理汇总了C++中Session::Offset方法的典型用法代码示例。如果您正苦于以下问题:C++ Session::Offset方法的具体用法?C++ Session::Offset怎么用?C++ Session::Offset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Session
的用法示例。
在下文中一共展示了Session::Offset方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: strdup
static status_t
scan_partition(int fd, partition_data *partition, void *cookie)
{
DEBUG_INIT_ETC(NULL, ("fd: %d, id: %ld, offset: %Ld, size: %Ld, "
"block_size: %ld, cookie: %p", fd, partition->id, partition->offset,
partition->size, partition->block_size, cookie));
Disc *disc = static_cast<Disc*>(cookie);
partition->status = B_PARTITION_VALID;
partition->flags |= B_PARTITION_PARTITIONING_SYSTEM
| B_PARTITION_READ_ONLY;
partition->content_size = partition->size;
Session *session = NULL;
status_t error = B_OK;
for (int i = 0; (session = disc->GetSession(i)); i++) {
partition_data *child = create_child_partition(partition->id,
i, partition->offset + session->Offset(), session->Size(), -1);
if (!child) {
PRINT(("Unable to create child at index %d.\n", i));
// something went wrong
error = B_ERROR;
break;
}
child->block_size = session->BlockSize();
child->flags |= session->Flags();
child->type = strdup(session->Type());
delete session;
if (!child->type) {
error = B_NO_MEMORY;
break;
}
child->parameters = NULL;
}
PRINT(("error: 0x%lx, `%s'\n", error, strerror(error)));
RETURN(error);
}