コード例 #1
0
ファイル: avSendTo.cpp プロジェクト: boundarydevices/bdScript
void uiState_t :: setState
   ( input_e input,
     bool    setNotCleared )
{
   unsigned char const imgBits  = lock_e | gateOpen_e ;
   unsigned char const oldState = state_ ;
   if( setNotCleared )
      state_ |= input ;
   else
      state_ &= ~input ;

   if( ( oldState & imgBits ) != ( state_ & imgBits ) )
   {
      image_t const &image = *images_[state_ & imgBits];
      if( image.pixData_ )
         getFB().render( 0, 0, image.width_, image.height_, (unsigned short *)image.pixData_ );
      if( state_ & touch_e )
      {
         invertScreen();
      }
   }
   else if( ( state_ & touch_e ) != ( oldState & touch_e ) )
   {
      invertScreen();
   }
}
コード例 #2
0
ファイル: avSendTo.cpp プロジェクト: boundarydevices/bdScript
void udpTouch_t :: onTouch( int x, int y, unsigned pressure, timeval const &tv )
{
   bool send ;
   if( first_ || ( !wasTouched_ ) )
   {
      ioctl( audioFd_, SNDCTL_DSP_RESET, 0 );
      invertScreen();
      wasTouched_ = true ;
      send = true ; // first press
      if( 0 < dingBytes_ )
         write( audioFd_, dingData_, dingBytes_ );
      first_ = false ;
   }
   else 
   {
      long long nowMs = tickMs();
      send = ( nowMs - prevTime_ ) > 500 ;
   }

   if( send )
   {
      udpHeader_t header ;
      header.type_ = header.touch ;
      header.length_ = 0 ;
      int numSent = sendto( udpSock_, &header, sizeof( header ), 0, 
                            (struct sockaddr *)&remote_, sizeof( remote_ ) );
      if( sizeof( header ) != numSent )
         perror( "touch sendto" );
      prevTime_ = tickMs();
   }
}
コード例 #3
0
ファイル: lcd.c プロジェクト: chessami92/ceen4360-cc2538-code
void flashScreen( void ) {
    int i;
    
    for( i = 0; i < 4; ++i ) {
        invertScreen();
        SysCtrlDelay( 1000000 ); // Abount 50ms
    }
}
コード例 #4
0
ファイル: avSendTo.cpp プロジェクト: boundarydevices/bdScript
void udpTouch_t :: onRelease( timeval const &tv )
{
   if( wasTouched_ )
   {
      invertScreen();
      ioctl( audioFd_, SNDCTL_DSP_RESET, 0 );
      if( 0 < dongBytes_ )
         write( audioFd_, dongData_, dongBytes_ );
      wasTouched_ = false ;
      udpHeader_t header ;
      header.type_ = header.release ;
      header.length_ = 0 ;
      int numSent = sendto( udpSock_, &header, sizeof( header ), 0, 
                            (struct sockaddr *)&remote_, sizeof( remote_ ) );
      if( sizeof( header ) != numSent )
         perror( "release sendto" );
      prevTime_ = tickMs();
   }
}