当前位置: 首页>>代码示例>>C++>>正文


C++ blob_t::size方法代码示例

本文整理汇总了C++中blob_t::size方法的典型用法代码示例。如果您正苦于以下问题:C++ blob_t::size方法的具体用法?C++ blob_t::size怎么用?C++ blob_t::size使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在blob_t的用法示例。


在下文中一共展示了blob_t::size方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: column_geometry

inline void column_geometry(sqlite3_stmt* stmt, int col, blob_t& blob)
{
  using namespace brig::detail::ogc;

  const uint8_t* data((const uint8_t*)lib::singleton().p_sqlite3_column_blob(stmt, col));
  const int size(lib::singleton().p_sqlite3_column_bytes(stmt, col));
  if (size <= 39) return;

  blob.resize(size - 39);
  const uint8_t byte_order(data[1]);
  blob[0] = byte_order;
  memcpy(blob.data() + 1, data + 39, blob.size() - 1);

  uint8_t* ptr = blob.data() + 1;
  switch (read<uint32_t>(byte_order, ptr))
  {
  default: throw std::runtime_error("SpatiaLite geometry error");
  case Point:
  case LineString:
  case Polygon: return;
  case MultiPoint:
  case MultiLineString:
  case MultiPolygon:
  case GeometryCollection: break;
  }

  for (uint32_t i(0), count(read<uint32_t>(byte_order, ptr)); i < count; ++i)
  {
    write<uint8_t>(ptr, byte_order);
    switch (read<uint32_t>(byte_order, ptr))
    {
    default: throw std::runtime_error("SpatiaLite geometry error");
    case Point: skip_point(ptr); break;
    case LineString: skip_line(byte_order, ptr); break;
    case Polygon: skip_polygon(byte_order, ptr); break;
    }
  }
}
开发者ID:igor-sadchenko,项目名称:brig,代码行数:38,代码来源:column_geometry.hpp

示例2: operator

 int operator()(const blob_t& r) const  { return lib::singleton().p_sqlite3_bind_blob(stmt, i, r.data(), int(r.size()), SQLITE_STATIC); }
开发者ID:igor-sadchenko,项目名称:brig,代码行数:1,代码来源:binding.hpp

示例3:

 binding_blob(SQLSMALLINT sql_type, const blob_t& blob) : m_sql_type(sql_type), m_ptr((void*)blob.data()), m_ind(blob.size())  {}
开发者ID:respu,项目名称:brig,代码行数:1,代码来源:binding_blob.hpp


注:本文中的blob_t::size方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。