MCPcopy Create free account
hub / github.com/ImageEngine/cortex / receiveHeader

Method receiveHeader

src/IECoreImage/ClientDisplayDriver.cpp:188–210  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

186}
187
188size_t ClientDisplayDriver::receiveHeader( int msg )
189{
190 DisplayDriverServerHeader header;
191 m_data->m_socket.receive( boost::asio::buffer( header.buffer(), header.headerLength ) );
192 if ( !header.valid() )
193 {
194 throw Exception( "Invalid display driver header block on socket package." );
195 }
196 size_t bytesAhead = header.getDataSize();
197
198 if ( header.messageType() == DisplayDriverServerHeader::exception )
199 {
200 vector<char> txt;
201 txt.resize( bytesAhead );
202 m_data->m_socket.receive( boost::asio::buffer( &(txt[0]), bytesAhead ) );
203 throw Exception( std::string("Error on remote display driver: ") + &(txt[0]) );
204 }
205 if ( header.messageType() != msg )
206 {
207 throw Exception( "Unexpected message type on display driver socket package." );
208 }
209 return bytesAhead;
210}
211
212void ClientDisplayDriver::imageData( const Box2i &box, const float *data, size_t dataSize )
213{

Callers

nothing calls this directly

Calls 5

validMethod · 0.80
getDataSizeMethod · 0.80
messageTypeMethod · 0.80
bufferMethod · 0.45
resizeMethod · 0.45

Tested by

no test coverage detected