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


C++ canWrite函数代码示例

本文整理汇总了C++中canWrite函数的典型用法代码示例。如果您正苦于以下问题:C++ canWrite函数的具体用法?C++ canWrite怎么用?C++ canWrite使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


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

示例1: sendMsgBurst

static void sendMsgBurst (int burstNr, int handle1, int handle2)
{
  canStatus stat;
  int i;
  
  // Send a burst of messages on both channels
  for (i=0; i<BURST_SIZE; i++) {
    stat = canWrite(handle1, 
                    msgs1[i].id,
                    msgs1[i].data, 
                    msgs1[i].dlc, 
                    msgs1[i].flags);
    if (stat != canOK) {
      printSomeStuff();
      printf("line %d, burst %d, msg %d\n", __LINE__, burstNr, i);
      Check("canWrite() failed", stat);
    }
    
    stat = canWrite(handle2, 
                    msgs2[i].id,
                    msgs2[i].data, 
                    msgs2[i].dlc, 
                    msgs2[i].flags);
    if (stat != canOK) {
      printSomeStuff();
      printf("line %d, burst %d, msg %d\n", __LINE__, burstNr, i);
      Check("canWrite() failed", stat);
    }
  }
}
开发者ID:mc01104,项目名称:CTR,代码行数:30,代码来源:kvTimeStampTester.c

示例2: incBusLoad

void incBusLoad (int channel, int flags, int load)
{
  canHandle handle;
  unsigned char msg[8] = "Kvaser!";
  int i, id = 100, dlc = sizeof(msg);
  canStatus stat = canERR_PARAM;
  handle  = canOpenChannel(channel, flags);
  if (handle < 0) {
    check("canOpenChannel", handle);
    return;
  }
  stat = canBusOff(handle);
  check("canBusOff", stat);
  stat = canSetBusParams(handle, bitrate, 0, 0, 0, 0, 0);
  check("canSetBusParams", stat);
  canBusOn(handle);
  for (i = 0; i < load; i++) {
    stat = canWrite(handle, id, &msg, dlc, 0);
    check("canWrite", stat);
  }
  stat = canWriteWait(handle, id, &msg, dlc, 0, -1);
  check("canWriteWait", stat);
  canBusOff(handle);
  canClose(handle);
}
开发者ID:astuff,项目名称:kvaser-linuxcan,代码行数:25,代码来源:busstat.c

示例3: printMessage

int CESDDevice::writeDevice(CProtocolMessage& rclProtocolMessage)
{
	int iRetVal = 0;
	long iNumberOfMessages = 1;
	CMSG clESDProtocolMessage;
	m_iErrorState = 0;

        //debug output

        printMessage(rclProtocolMessage,WRITE);
	clESDProtocolMessage.id = rclProtocolMessage.m_uiMessageId;
	clESDProtocolMessage.len = rclProtocolMessage.m_ucMessageLength;
	if(rclProtocolMessage.m_bRTRFlag)
		clESDProtocolMessage.len |= 0x10;
	memcpy(clESDProtocolMessage.data, rclProtocolMessage.m_aucMessageData, rclProtocolMessage.m_ucMessageLength);
	iRetVal = canWrite(m_hDevice, &clESDProtocolMessage, &iNumberOfMessages, NULL);
//	iRetVal = canSend(m_hDevice, &clESDProtocolMessage, &iNumberOfMessages);
	if(iRetVal != NTCAN_SUCCESS)
	{
		warning("can send failed Errorcode: %d", iRetVal);
		m_iErrorState = getDeviceError(iRetVal);
		return m_iErrorState;
	}

	return m_iErrorState;
}
开发者ID:ipa-goa-wt,项目名称:schunk_modular_robotics,代码行数:26,代码来源:ESDDevice.cpp

示例4: payload_type_set_send_fmtp

/**
 * Sets a send parameters (fmtp) for the PayloadType.
 * This method is provided for applications using RTP with SDP, but
 * actually the ftmp information is not used for RTP processing.
**/
void payload_type_set_send_fmtp(PayloadType *pt, const char *fmtp){
	if (canWrite(pt)){
		if (pt->send_fmtp!=NULL) ortp_free(pt->send_fmtp);
		if (fmtp!=NULL) pt->send_fmtp=ortp_strdup(fmtp);
		else pt->send_fmtp=NULL;
	}
}
开发者ID:FennyFatal,项目名称:the-ims-open-source-project-for-android,代码行数:12,代码来源:payloadtype.c

示例5: writeTape

afs_int32
writeTape(int fid, struct tape *tapePtr, afs_int32 dumpid)
{
    struct budb_tapeEntry tapeEntry;
    afs_int32 code = 0, tcode;

    tcode = writeStructHeader(fid, SD_TAPE);
    if (tcode)
	ERROR(tcode);

    tapeToBudbTape(tapePtr, &tapeEntry);

    tapeEntry.dump = htonl(dumpid);

    if (canWrite(fid) <= 0)
	ERROR(BUDB_DUMPFAILED);

    if (write(fid, &tapeEntry, sizeof(tapeEntry)) != sizeof(tapeEntry))
	ERROR(BUDB_DUMPFAILED);

    haveWritten(sizeof(tapeEntry));

  error_exit:
    return (code);
}
开发者ID:adeason,项目名称:openafs,代码行数:25,代码来源:db_dump.c

示例6: GDALGetDriverCount

void ossimGdalImageWriterFactory::getImageFileWritersByMimeType(ossimImageWriterFactoryBase::ImageFileWriterList& result,
                                                                const ossimString& mimeType)const
{
   int c = GDALGetDriverCount();
   int idx = 0;
   for(idx = 0; idx < c; ++idx)
   {
      
      GDALDriverH h = GDALGetDriver(idx);
      if(canWrite(h))
      {
         ossimString  driverName = GDALGetDriverShortName(h);
         driverName = "gdal_" + driverName.upcase();
         ossimString metaData(GDALGetMetadataItem(h, GDAL_DMD_MIMETYPE, 0));
         if(!metaData.empty())
         {
            if(metaData == mimeType)
            {
               ossimGdalWriter* writer = new ossimGdalWriter;
               writer->setOutputImageType(driverName);
               result.push_back(writer);
               if ( driverName == "gdal_JP2KAK" )
               {
                  // Make it lossless for starters.  User can still override.
                  ossimKeywordlist kwl;
                  kwl.add("property0.name", "QUALITY");
                  kwl.add("property0.value", "100");
                  writer->loadState(kwl, NULL);
               }
               return;
            }
         }
      }
   }
}
开发者ID:ICODE-MDA,项目名称:AutomatedSARShipDetection,代码行数:35,代码来源:ossimGdalImageWriterFactory.cpp

示例7: writeVolume

afs_int32
writeVolume(struct ubik_trans *ut, int fid, struct volFragment *volFragmentPtr,
	    struct volInfo *volInfoPtr, afs_int32 dumpid, char *tapeName)
{
    struct budb_volumeEntry budbVolume;
    afs_int32 code = 0;

    volsToBudbVol(volFragmentPtr, volInfoPtr, &budbVolume);

    budbVolume.dump = htonl(dumpid);
    strcpy(budbVolume.tape, tapeName);

    writeStructHeader(fid, SD_VOLUME);

    if (canWrite(fid) <= 0)
	ERROR(BUDB_DUMPFAILED);

    if (write(fid, &budbVolume, sizeof(budbVolume)) != sizeof(budbVolume))
	ERROR(BUDB_DUMPFAILED);

    haveWritten(sizeof(budbVolume));

  error_exit:
    return (code);
}
开发者ID:adeason,项目名称:openafs,代码行数:25,代码来源:db_dump.c

示例8: write

bool BackgroundTexturesIOPC::write(const BackgroundTexturesPC *textures)
{
	if(!canWrite()) {
		return false;
	}

	for(quint8 texID=0 ; texID<BACKGROUND_TEXTURE_PC_MAX_COUNT ; ++texID) {

		quint16 exists = textures->hasTex(texID);

		if(device()->write((char *)&exists, 2) != 2) {
			return false;
		}

		if(bool(exists)) {
			BackgroundTexturesPCInfos infos = textures->texInfos(texID);

			quint16 size = infos.size, depth = infos.depth;

			if(device()->write((char *)&size, 2) != 2 ||
					device()->write((char *)&depth, 2) != 2) {
				return false;
			}

			if(device()->write(textures->data().mid(infos.pos, infos.depth * 65536))
					!= infos.depth * 65536) {
				return false;
			}
		}
	}

	return true;
}
开发者ID:TurBoss,项目名称:makoureactor,代码行数:33,代码来源:BackgroundTexturesIO.cpp

示例9: VLOG

bool Fifo::tryConnect() noexcept {
  if (isConnected()) {
    return true;
  }

  if (!exists(path_.c_str())) {
    if (!create(path_.c_str())) {
      static bool logged{false};
      if (!logged) {
        VLOG(1) << "Error creating debug fifo at \"" << path_ << "\": "
                << strerror(errno) << " [" << errno << "]";
        logged = true;
      }
      return false;
    }
  }

  if (!isFifo(path_.c_str()) || !canWrite(path_.c_str())) {
    if (!removeFile(path_.c_str()) ||
        !create(path_.c_str())) {
      return false;
    }
  }

  int fd = folly::openNoInt(path_.c_str(), O_WRONLY | O_NONBLOCK);
  if (fd >= 0) {
    fd_.store(fd);
    return true;
  }

  return false;
}
开发者ID:Fierralin,项目名称:mcrouter,代码行数:32,代码来源:Fifo.cpp

示例10: write

bool BackgroundTilesIO::write(const BackgroundTiles &tiles) const
{
	if(!canWrite()) {
		return false;
	}

	return writeData(tiles);
}
开发者ID:TurBoss,项目名称:makoureactor,代码行数:8,代码来源:BackgroundTilesIO.cpp

示例11: canWrite

PrefsFile::PrefsFile(const QString& pFilePath, bool write)
{
	m_prefsFilePath = pFilePath;
	m_ioEnabled = write;
	if (m_ioEnabled)
		canWrite();
	load();
}
开发者ID:luzpaz,项目名称:scribus,代码行数:8,代码来源:prefsfile.cpp

示例12: writeByte_nonblocking

int writeByte_nonblocking(char byte, uint8_t usartn)
{
   if (canWrite(usartn)) {
      __writeByte(byte, usartn);
      return 0;
   }

   return -1;
}
开发者ID:mzimmerer,项目名称:robot,代码行数:9,代码来源:uart.c

示例13: circularBuffer_write

uint8_t circularBuffer_write(CircularBuffer * buffer, char * data, uint8_t size){
	uint8_t amount = 0;
	while (size-amount>0 && canWrite(buffer)){
		if(circularBuffer_writeByte(buffer, data[amount]) == -1)
			return amount;
		amount++;
	}
	return amount;
}
开发者ID:evaelectronics,项目名称:EVA-OS,代码行数:9,代码来源:circularbuffer.c

示例14: werase

void StatisticsWindow::updateProtocol(AbstractProtocol* p)
{
    if(p != nullptr)
        _activeProtocol = p;
    if(_window == nullptr)
    {
        return;
    }
    werase(_window);
    wborder(_window, ACS_VLINE, ACS_VLINE, ACS_HLINE, ACS_HLINE, ACS_ULCORNER, ACS_URCORNER, ACS_LLCORNER, ACS_LRCORNER);

    std::string tmp("  ");
    for_each(_allProtocols.begin(), _allProtocols.end(), [&](std::string& s) {
        if(!s.compare(_activeProtocol->getProtocolName()))
        {
            tmp += std::string(" < ") + s + std::string(" > ");
        }
        else
        {
            tmp += std::string("   ") + s + std::string("   ");
        }

    });
    mvwprintw(_window, STATISTICS::PROTOCOLS_LINE, FIRST_CHAR_POS, "%s", tmp.c_str());

    unsigned int line = STATISTICS::FIRST_OPERATION_LINE;
    for(unsigned int i = STATISTICS::DEFAULT_GROUP; i <= _activeProtocol->getGroups(); i++)
    {
        if(canWrite(line))
        {
            mvwprintw(_window, line - (_scrollOffset.at(p)), FIRST_CHAR_POS, "%s", "Total:");
        }
        line++;
        for(unsigned int j = _activeProtocol->getGroupBegin(i); j < _activeProtocol->getGroupBegin(i + 1); j++)
        {
            if(canWrite(line))
            {
                mvwprintw(_window, line - (_scrollOffset.at(p)), FIRST_CHAR_POS, "%s", p->printProcedure(j));
            }
            line++;
        }
        line++;
    }
}
开发者ID:ailyasov,项目名称:nfstrace,代码行数:44,代码来源:statistics_window.cpp

示例15: write

bool MemBuffer::write(const Byte* array, size_t size)
{
    bool bOk = false;
    if(canWrite(g_sizeBYTE*size))
    {
        memcpy(getBuffer(), array, size);
        bOk = shiftBuffer(g_sizeBYTE*size);
    }
    return bOk;
}
开发者ID:sfgorky,项目名称:huffman,代码行数:10,代码来源:MemBuffer.cpp


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