Well - the entire idea of Salesforce Data Entry Event is to inject a contact into a journey based on data changing in Sales Cloud. You set up the criteria on the contact object itself, or on any object relating to Contact. This can e.g. be Case which triggers injection of the contact into journey once Case status is set to closed.
You can define the criteria to be evaluated when a record is created or updated (or both). And this evaluation will be done in near-real time:
There is no need to use the data from Synchronised Data Extensions, as long as you ensure your Entry Event Data is sufficient to support the journey. You select what objects and fields should be used for the Journey Data once you configure the entry event. Keep in mind this data is a snapshot from the time the contact enters the journey. If you want to monitor changes in the contact record throughout the journey, you will indeed need to reference your synchronised data extensions in the contact model and use it in e.g. decision split.